From 99d52cb760861bbf7dfc75ff4fdc592e796b99d3 Mon Sep 17 00:00:00 2001
From: DrMadWill <87474631+DrMadWill@users.noreply.github.com>
Date: Tue, 4 Jan 2022 21:16:09 +0400
Subject: [PATCH] 18 Module Pattern > Module Pattern > add
---
17_Acount_Search_App/Js/app.js | 5 --
18_JavaScript_Modul_Pattern/HTML/will.html | 13 +++
.../JS/77_18_1_JsModul.js | 88 +++++++++++++++++++
.../documantation.md | 2 +
4 files changed, 103 insertions(+), 5 deletions(-)
create mode 100644 18_JavaScript_Modul_Pattern/HTML/will.html
create mode 100644 18_JavaScript_Modul_Pattern/JS/77_18_1_JsModul.js
create mode 100644 Documantation/18_JavaScript_Modul_Pattern/documantation.md
diff --git a/17_Acount_Search_App/Js/app.js b/17_Acount_Search_App/Js/app.js
index f38e2c2..903eb36 100644
--- a/17_Acount_Search_App/Js/app.js
+++ b/17_Acount_Search_App/Js/app.js
@@ -51,11 +51,6 @@ $(document).ready(function () {
}
}).catch(error => ui.AlertInfo(info))
}
-
})
-
-
-
-
});
diff --git a/18_JavaScript_Modul_Pattern/HTML/will.html b/18_JavaScript_Modul_Pattern/HTML/will.html
new file mode 100644
index 0000000..638498a
--- /dev/null
+++ b/18_JavaScript_Modul_Pattern/HTML/will.html
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ Document
+
+
+
+
+
+
\ No newline at end of file
diff --git a/18_JavaScript_Modul_Pattern/JS/77_18_1_JsModul.js b/18_JavaScript_Modul_Pattern/JS/77_18_1_JsModul.js
new file mode 100644
index 0000000..76282d4
--- /dev/null
+++ b/18_JavaScript_Modul_Pattern/JS/77_18_1_JsModul.js
@@ -0,0 +1,88 @@
+
+//! 1) Global variable naming conflicts
+
+
+// scrip.js
+ // var name = "Eli"
+
+
+// app.js
+ // var name = "Ehmed"
+
+
+// console.log(name)
+
+var ehmed = (function(){
+ var names = "Ehmed"
+ console.log(names)
+})()
+
+
+
+var cebil = (function(){
+ var names = "cebil"
+ console.log(names)
+})()
+
+// console.log(names)
+
+
+
+//! 2) Encapsulation
+
+var Counter = {
+ number:0,
+ increment:function(){
+ return ++this.number
+ },
+ decrement:function(){
+ return --this.number
+ }
+
+}
+
+// console.log(Counter.increment())
+// console.log(Counter.increment())
+// console.log(Counter.decrement())
+// Counter.number=10// This is problem
+// console.log(Counter.decrement())
+
+
+let Module = (function(){
+ var number = 5
+ function Increment(){
+ return ++number
+ }
+
+ function Decrement(){
+ return --number
+ }
+
+
+ return{
+ Increment,Decrement
+ }
+
+})()
+
+// console.log(number)
+// console.log(Module.number)
+console.log(Module.Increment())
+console.log(Module.Increment())
+console.log(Module.Decrement())
+
+let Mod = (function(){
+
+ let privateMethod = function(){
+ // some amazing code
+ }
+
+
+ return {
+ publicMethod : function(){
+ return 'amazing'
+ }
+ }
+})()
+
+console.log(Mod.publicMethod())
\ No newline at end of file
diff --git a/Documantation/18_JavaScript_Modul_Pattern/documantation.md b/Documantation/18_JavaScript_Modul_Pattern/documantation.md
new file mode 100644
index 0000000..478a15a
--- /dev/null
+++ b/Documantation/18_JavaScript_Modul_Pattern/documantation.md
@@ -0,0 +1,2 @@
+## JavaScript Module
+> Istənilən `app` da biz həmin `app` yazılamsı zaman sadələşdırməyə getməyə çalışırıq. Bu münasibətə əsasən məsələni daha da asanlaşdırmaq üçün `app` modullara bölərək `app`in icrasını həmin modullar vastəsi ilə həyata keçirə bilərik. Bu bizə onu daha yaxşı icrata keçirməyə imkan veririr və gələcəkdə ola biləcək gəliştirmələr zamanı bütün `app`i deyildə sadəcə bir modul üzərində dəişiklik edərək həmin gəliştirməni irəllədə bilərik.
\ No newline at end of file