بعد أن أنهينا حديثنا عن لغة الـcss الخاصة بتنسيق صفحات الويب في الجزء السابق، نبدأ بحول الله في الجزء السادس والخاص بالجافا سكريبت.
فلنستحضر معا حديثنا عن نظرية البيت في الجزء الثاني من السلسة: أشرنا إلى أن ما يربط أجزاء هذا البيت – المتمثل في الموقع – هو لغة javascript، فهي تقوم بالربط بين عناصر الصفحة، بل هي تقوم بالتحكم الكامل في كل شيء موجود داخل الصفحة (وهذا يأتي مع المستويات المتقدمة فيها)
الـ javascript هي لغة برمجة، تحتوي على كل مصطلحات لغات البرمجة، سهلة التعلم. ربما يوجد لغات برمجةٍ أسهل منها، ولكن لا غنى عنها لمن أراد الدخول في عالم الويب.
لا بد أن تعرف أن هناك فرقا كبيرا بين لغتي الـ javascript والـ java ، حيث أن الـ java لغةٌ “عملاقة” وأساسها هوا برامج الديسك توب وليس الويب، كما أنها قوية جدا في تطبيقات الموبايل، في حين أن لغتنا التي نتحدث عنها – أي الـ javascript – مخصصة لصفحات الويب
محتويات هذه اللغة كمحتويات أي لغةِ برمجة أخرى، وفي ما يلي سنقوم بتوضيح بعض المفاهيم الأساسية حولها (وحول لغات البرمجة الأخرى عموما)
1 – مصطلح var : المتغير، وهو ببساطة مكان لتخزين أي قيمةٍ مهما كان نوعها.
لكشف الغموض عن ذلك، لنفترض مثلاً أن لنا مكتبا لموظف في مؤسسة، وهذا المكتب يحتوي على أدراج. السؤال هنا : هل هناك فرق بين ما سيضعه الموظف داخل الأدراج؟ سواء كان مستندات أو أدوات أو حاسبهُ الشخصي مثلا؟
في جميع الحالات لم تتغير وظيفة الدرج أيا كان ما بداخله، ووظيفته هي تخزين شيء لحين استخدامه (استدعائه في البرمجة). قد يكون المُخزّن داخلَه نصًّا فنطلق عليه في البرمجة هنا “string” وقد يكون المخزن داخله رقما “number” .ولابد أن تعطيه اسماً
2 – مصطلح for loops : دالة التكرار. إذا أردنا مثلاً أن نقوم بكتابة الأرقام من 1 إلى 10 على الشاشة، فلن نعطي 10 أوامر لكتابة كل رقم منفردا، فهذا أسلوب ممل ومضيع للوقت.
هنا يكمن دور هذه الدالة. كل ما سنقوم بكتابته هو أمر واحد بكتابة رقم ليُكرّرَ 10 مرات مع إضافة 1 كل مرة.
3- دالة if condition الشرطية : وهي دالة لتنفيذ مجموعة تعليمات أو أوامر اعتمادا على تحقّق شروط محددة مسبقا.
4 – مصطلح Function : وهو مصطلح مهم جداً والمقصود به هو وظيفة تجمع كل المصطلحات السابقة وهو أساس كل لغات البرمجة.
لو رجعنا لمثال المكتب السابق، فالمكتب ككل يقوم على خدمة الموظف بكل ما يحتويه. كذلك الـfunction تؤدي وظيفة معينة بكل ما تحتويه من عناصر برمجية.
ولابد من التنويه على أن هذه اللغة كبيرة جدا وتحتوي على مكتبات وبيئات عمل كثيرة تسهل عمل اللغة وتجعلها شيقة أكثر، مثل : jquery , Angular js and node.js وهي متقدمة جدا وبتعلمها تكون من محترفي هذه اللغة.
في النهاية لابد من الممارسة ثم الممارسة فهذه اللغة من الصعب جدا تعلمها من القراءة فقط وهذا عن تجربتي الشخصية، فالمشاهدة خير وسيلة للتعلم خصوصا في البداية والقراءة تأتي في المراحل المتقدمة، ولذلك سنرفق في التعليقات أفضل دورة عربية شاملة فيها.
أيضا لابد من ممارسة التمارين عليها حتى تتعود على طريقة كتابتها. يوجد الكثير من المواقع للتمارين على الإنترنت. فقط اكتب على جوجل : js exercises
انتظروا الجزء القادم والآخير في السلسلة بإذن الله
.