تعلم برمجة جافا سكريبت من الصفر. كيف توقفت عن القلق وتعلمت استخدام جافا سكريبت بكل حب

من المؤلف: قبل شهرين لم أتمكن من النظر إلى JS دون أن أشعر بالتوتر. لقد سئمت 100% من JS ولم أستطع الخروج من هذه الحالة. واستمر لسنوات عديدة. اليوم أحب استخدام JavaScript ونظامها البيئي. ماذا حدث؟

لقد كنت أستخدم JS بشكل أو بآخر منذ التسعينيات. لدي كتب تبدو مضحكة جدًا الآن. إنها مليئة ببيانات document.write.

لقد تغيرت JS كثيرًا خلال العامين الماضيين. في البداية لم يكن لدي الوقت لدراسة كل هذه التغييرات. لم أستطع استيعاب الكثير من الأشياء الجديدة في وقت واحد. تغيرت JS، لكنني قاومت. لقد علمته لفترة طويلة، وفجأة بدأ يتغير.

لقد وجدت تعليقًا في المقالة الشهيرة "شرح جافا سكريبت الحديثة للديناصورات". لقد قيل أن "تعلم لغة JS الحديثة أمر صعب للغاية إذا لم تفعل ذلك من البداية":

"أود أن أقول إن التدريس منذ البداية (نعم، أنا كبير في السن) هو أكثر صعوبة - تيم تيت"

جافا سكريبت. بداية سريعة

في عام 2012، أصبحت جادًا بشأن JS وNode.js. كان ES6 بالنسبة لي أكبر تغيير في اللغة على الإطلاق، ولم أر شيئًا مثله من قبل. التغيير الكبير السابق كان في عام 2009 مع ES5. لقد غير ES6 كل شيء حرفيًا. لقد كان تحديثًا كبيرًا لـ JS حيث كان هناك الكثير من الميزات الجديدة التي يمكن أن تصل إلى المواصفات كل يوم، لكنك لم تكن تعرف ما إذا كانت ستصل إلى هذه المواصفات أم لا. وكان علي أن أتابع الأمر بينما كان الجميع على تويتر يناقشون ما هو الشيء الكبير التالي.

فار هو شيء من الماضي.

الوظيفة لم تعد موجودة.

لقد اختفى الميراث النموذجي، الذي استغرق الكثير من الوقت لدراسته، مختبئًا تحت الطبقات.

وكان ذلك مجرد بداية.

بناء كل شيء

أحد التحولات الكبيرة هو البناء.

لقد ابتعدنا عن مجرد تضمين ملفات JS عبر علامة البرنامج النصي وأصبح لدينا الآن مراحل بناء يتم خلالها تجميع لغتنا في ملف ضخم غير مفهوم. في البداية قاومت بقوة، ووقفت في برجي، مسلحًا حتى الأسنان، مستعدًا لمحاربة هذا التشكيل.

عندما وصلت تعزيزات بابل، قاتلت بقوة أكبر في البداية. لكن في النهاية رفعت الراية البيضاء وانضممت إلى العدو.

أدركت أن بابل ليست مكتبة فاخرة تقدم المستقبل وأحدث الميزات، وعندما يظهر كل هذا في المتصفحات، سننسى بابل. لا، بابل موجودة لتبقى في المستقبل المنظور.

عندما يتم دعم ES2017 بالكامل في المتصفحات، سيسمح Babel بـ ES2018 وES2019 وما إلى ذلك. لا خروج. احتضن المستقبل، بابل صديقك.

استخدم أبسط البدائل

تعد الأدوات أحد أصعب أجزاء JS في الوقت الحالي. نعم، يمكنك تعلم خصوصيات وعموميات Webpack، ولكن إذا بدأت، فتجاهل كل شيء واستخدم الحلول الجاهزة مثل create-react-app، وReact Boilerplate، التي تخفي عنك التفاصيل الصغيرة وتسمح لك بالتركيز على الكود .

لا تبدأ بتهيئة بيئتك، بل تعلم باستخدام Glitch: لا توجد مواضيع بسيطة في تعلم JS الحديثة.

لا مزيد من الإصدارات الضخمة

كان ES6 كبيرًا جدًا لدرجة أن لجنة ECMAScript قررت إصدار إصدارات أصغر. ولهذا السبب يُطلق على ES6 أيضًا اسم ES2015، وكان الإصدار الأول منذ عام - والآن ستكون هناك إصدارات كل عام. يجعل من السهل تعلم شيء ما. سيكون هناك عدد أقل من التغييرات لأن وقت تنفيذها محدود ويمكن التنبؤ به (استسلم، التغييرات قادمة).

تجاهل الضوضاء

إذا كنت مثلي، فأنت تتابع الكثير من الأشخاص على تويتر والذين هم دائمًا في المقدمة. ربما سيكون الاتجاه التالي هو بعض القادة الذين سوف يمليون أفكارهم. يقولون استخدم X، الجميع يستخدم X.

ربما يرغبون في كشف التعليمات البرمجية الخاصة بهم لأحدث واجهات برمجة التطبيقات، والتي ليست موحدة على الإطلاق، ولكن يمكن تمكينها في المتصفح عبر علامة.

وقد يكون لديهم أسباب وجيهة لذلك. لم يكن لديك. لا تنخدع بالأشياء اللامعة الجديدة، ركز على عملك.

لا يتم إصدار أطر عمل جديدة كل أسبوع

هناك نكتة على الإنترنت حول "إطار عمل الشهر" أو "مكتبة الأسبوع الجديدة". هذا صحيح، هناك الكثير من الأشخاص الذين يعملون مع JS، وهذا رائع. وهذا يجلب الابتكار والتطور، وهي تجربة مميزة لـ JS على مدار العامين الماضيين (وهو أمر كبير بالنسبة للنظام البيئي للغة).

لكن الشيء الكبير غالبًا ما لا يحدث فرقًا كبيرًا.

4 سنوات هي وقت طويل في مجال تكنولوجيا المعلومات. هذه تقنيات مستقرة. علموهم أنهم سيبقون لفترة طويلة جدًا (ولن يغادروا).

"لديك متسع من الوقت لتصبح خبيرًا في أي من هذه الأطر. لن يذهبوا إلى أي مكان في أي وقت قريب."

تقبل حقيقة أن كل شيء يأتي ويذهب

كل شيء له دورة حياة.

جافا سكريبت. بداية سريعة

تعلم أساسيات JavaScript من خلال مثال عملي لكيفية إنشاء تطبيق ويب.

قبل بضع سنوات، تم استخدام jQuery في كل مكان. في الوقت الحاضر نادرا ما تبدأ مشاريع جديدة عليه.

كان Backbone.js شائعًا في عام 2013. الآن هو في عداد المفقودين.

تم مسح CoffeeScript من على وجه الأرض.

انطلقت Ember.js وAngular.js وMeteor وظلت في القمة لعدة سنوات. في الوقت الحاضر، أكثر تلك التي يتم الحديث عنها هي React وVue وAngular (وهذا ليس Angular.js).

تستمر دورة هذه الأطر الأساسية بضع سنوات. لا يزال لدي العديد من تطبيقات Ember.js وجميعها تعمل بشكل جيد. إذا كانت تعمل، فلن تحتاج إلى التحديث. أنا لا أخطط للمسهم.

"التكنولوجيا تتطور وتنضج. وبعد ذلك لم يعودوا يتحدثون عنها، بل استخدموها”.

أنت لست غبيًا بما يكفي لاستخدام jQuery

لا يمكن التغلب على بعض الأشخاص، ولكن إذا قرأت كثيرًا، فقد رأيت أشخاصًا يحتقرون التكنولوجيا التي استخدمها الجميع ذات يوم - فهم يعرفون أفضل ويريدون إخبارك أنك مخطئ.

لقد قمت بالبرمجة بلغة PHP لفترة طويلة، وأنا معتاد على ذلك. من الطبيعي أن ينتقد الناس شيئًا شائعًا. حتى لعبة Go يتم انتقادها أحيانًا بسبب بساطتها، على الرغم من أن هذه هي الحيلة. سيكون هناك دائما مثل هؤلاء الناس.

على سبيل المثال، سأقتبس تغريدة من بيتر ليفيلز، الذي قام ببناء مشروع تجاري ضخم ومستقل على ملف PHP واحد. اقرأ التعليقات.

باعتبارك مبتدئًا، قد يتم إخبارك أنك اخترت تقنية قديمة لم يعد يستخدمها أحد وأنك بحاجة إلى استخدام React.

لا تستمع إليهم.

تذكر: إذا كان الأمر مناسبًا لك، فهو الكومة المناسبة.

"إذا كان الأمر مناسبًا لك، فهو المكدس المناسب."

دائمًا ما يتم إنشاء التكنولوجيا من الشركات الكبيرة لتلبية احتياجات مختلفة عن احتياجاتك أو احتياجات فريقك الصغير. استخدم ما تعرفه وافعل شيئًا مختلفًا، حتى بدون استخدام أحدث التقنيات.

الآن، ربما لا تحتاج إلى jQuery. ولكن ليس بدلاً من الإطار - JS العادي جيد جدًا.

نقطة أخرى مهمة هي الإفراط في التعقيد. لا تستخدم التكنولوجيا فقط لتبدو أكثر ذكاءً. تعرف عليها بشكل أفضل. اكتشف متى سيساعدك الإطار أو المكتبة.

لا تحتاج إلى معرفة كل شيء. إيجاد التوازن

قد يبدو هذا وكأنه اقتباس تويتر، ولكن لا أحد يعرف كل شيء. لا أحد يستطيع أن يتعلم كل ما يحدث في تطوير الواجهة الأمامية الآن. هذه مدرسة أبدية. لن يكون من الممكن الانتهاء منه.

تعلم التقنيات باستخدام وثائق سهلة الاستخدام

ليس من قبيل الصدفة أن يكون لدى React وVue مثل هذه الوثائق الجيدة.

وهذا جزء أساسي من النجاح.

سوف يتغير جافا سكريبت مرة أخرى

في العام الماضي، قدمت لغة ECMAScript الانتظار/غير المتزامن. الآن يتم استخدامها في كثير من الأحيان. يبدو رمز الوعد سيئًا تمامًا، وستحتاج إلى إعادة كتابة كل شيء.

vولكن لا تفعل ذلك، فمن الأفضل استخدام وظائف جديدة للتعليمات البرمجية الجديدة.

سيحدث نفس الشيء هذا العام مع ES2018. سيتحدث الجميع عن ذلك لفترة من الوقت ثم يعودون إلى العمل ويبدأون في الحديث عن ميزات ES2019.

قبول التغييرات. وهذا أفضل بكثير من استخدام التكنولوجيا التي لن يحتاجها أحد في غضون عامين: JS موجودة لتبقى!

تعلم الأساسيات وابحث عن طريقك

يتطلب تطوير منصة ويب التعلم الإلزامي المتكرر لشيء جديد، حتى لمجرد معرفة الاحتمالات.

في بعض الأحيان، يكون إنفاق 20% من وقتك على 80% من الميزات الجديدة هو كل ما تحتاجه دون الدخول في الحالات المتطورة.

الرحلة بدات للتو

بالمقارنة مع اللغات الأخرى، JS لا تزال شابة. إنه يتمتع بشعبية كبيرة وقد تمكن من تغيير الكثير خلال العامين الماضيين. تجذب اللغة العديد من المطورين الموهوبين كل يوم. إنه لأمر مدهش أن نتخيل كيف سنكتب خلال 10 أو 20 عامًا.

هذه الصفحة هي بداية برنامج تعليمي لجافا سكريبت للمبتدئين. لإتقانها، يجب أن يكون لديك على الأقل الحد الأدنى من المعرفة بـ HTML وCSS. ارجع إلى البرنامج التعليمي لـ HTML وCSS للمبتدئين للحصول عليها (لتعلم JavaScript، يتعين عليك تلقي ما لا يقل عن 3-4 دروس على الأقل).

تم تصميم JavaScript ليتم تشغيلها في المتصفح جنبًا إلى جنب مع HTML وCSS. ولكن، إذا كانت هذه اللغات مخصصة لتخطيط بنية الموقع، فإن JavaScript يسمح لك "بإحياء" صفحات الويب - وجعلها تستجيب لإجراءات المستخدم أو إظهار بعض الديناميكية (على سبيل المثال، تغيير الصور في كتلة أو إسقاط جميل بسلاسة -القوائم السفلية).

لذلك، دون مزيد من اللغط، دعونا نبدأ في تعلم هذه اللغة المفيدة التي لا يمكن إنكارها.

كيفية تشغيل جافا سكريبت

هناك طريقتان لكتابة وتشغيل جافا سكريبت: الأولى هي أن نكتب الكود مباشرة على صفحة HTML داخل العلامة:

هذا هو عنوان العنوان var name = "ديما"; تنبيه ("مرحبا،" + اسم)؛

يمكن وضع العلامة في أي مكان بالصفحة - سواء في الداخل أو في .

الخيار الثاني هو أن يتم تخزين كود JavaScript في ملف منفصل (مثل CSS) ويتم توصيله أيضًا باستخدام علامة ذات سمة src، والتي تحدد المسار إلى الملف مع البرنامج النصي:

هذا هو عنوان العنوان وهذا هو المحتوى الرئيسي للصفحة.

في المستقبل، لن أصف كيفية اتصال جافا سكريبت، ولكن سأكتب ببساطة كود HTML في كتلة واحدة، وكود جافا سكريبت في كتلة أخرى.

العثور على أخطاء في التعليمات البرمجية

شاهد الفيديو التالي حيث أعرض كيفية العمل مع مصحح الأخطاء، والذي يوضح أخطاء JavaScript ووحدة التحكم:

قد تتقدم بعض مقاطع الفيديو بشكل أسرع، لأننا لم نقم بتغطية ES6 بالكامل حتى الآن في هذه المرحلة من البرنامج التعليمي. ما عليك سوى تخطي مقاطع الفيديو هذه ومشاهدتها لاحقًا.

اياكس
  • تم استبعاد الدرس (مادة قليلة)، سيكون هناك قريبًا كتاب منفصل عن Ajax (مواد كثيرة)
البرنامج الذي يسمى تقليديا "مرحبا بالعالم! "، هو بسيط جدا. ويخرج في مكان ما عبارة "Hello, World!"، أو عبارة أخرى مماثلة، باستخدام لغة معينة.

JavaScript هي لغة يمكن من خلالها تنفيذ البرامج في بيئات مختلفة. في حالتنا، نحن نتحدث عن المتصفحات ومنصة خادم Node.js. إذا لم تكن قد كتبت سطرًا واحدًا من كود JS بعد وتقرأ هذا النص في متصفح على جهاز كمبيوتر سطح المكتب، فهذا يعني أنك على بعد ثوانٍ من برنامج JavaScript الأول.

لتتمكن من كتابته، إذا كنت تستخدم Google Chrome، فافتح قائمة المتصفح وحدد الأمر أدوات إضافية > أدوات المطور. سيتم تقسيم نافذة المتصفح إلى قسمين. في إحداهما، ستكون الصفحة مرئية، وفي الأخرى سيتم فتح لوحة بها أدوات المطور، والتي تحتوي على العديد من الإشارات المرجعية. نحن مهتمون بعلامة التبويب "وحدة التحكم". انقر عليه. تجاهل ما قد يكون موجودًا بالفعل في وحدة التحكم (يمكنك استخدام مجموعة المفاتيح Ctrl + L لمسحها). نحن مهتمون الآن بدعوة وحدة التحكم. هذا هو المكان الذي يمكنك فيه إدخال كود JavaScript، والذي يتم تنفيذه بالضغط على مفتاح Enter. دعنا ندخل ما يلي في وحدة التحكم:

Console.log ("مرحبًا بالعالم!")
يمكن إدخال هذا النص من لوحة المفاتيح، أو يمكنك نسخه ولصقه في وحدة التحكم. ستكون النتيجة هي نفسها، لكن إذا كنت تتعلم البرمجة، فمن المستحسن إدخال نصوص البرنامج بنفسك بدلاً من نسخها.

بعد أن يكون نص البرنامج في وحدة التحكم، اضغط على مفتاح Enter.

إذا تم كل شيء بشكل صحيح، فسيظهر النص Hello، World! . تجاهل كل شيء آخر في الوقت الحالي.


البرنامج الأول في وحدة تحكم المتصفح - إخراج رسالة إلى وحدة التحكم

نسخة أخرى من المتصفح "Hello, World!" يتكون من عرض نافذة الرسالة. يتم ذلك على النحو التالي:

تنبيه ("مرحبًا بالعالم!")
وهنا نتيجة تشغيل هذا البرنامج.


عرض رسالة في النافذة

لاحظ أن شريط أدوات المطور موجود الآن في أسفل الشاشة. يمكنك تغيير موقعه باستخدام القائمة التي تحتوي على ثلاث نقاط في عنوانها واختيار الرمز المناسب. هناك يمكنك أيضًا العثور على زر لإغلاق هذه اللوحة.

تتوفر أيضًا أدوات المطور، بما في ذلك وحدة التحكم، في المتصفحات الأخرى. والشيء الجيد في وحدة التحكم هو أنها تكون دائمًا في متناول اليد عند استخدام المتصفح.

هناك طرق أخرى لتشغيل كود JS في المتصفح. لذلك، في الاستخدام النموذجي لبرامج JavaScript، يتم تحميلها في المتصفح لتشغيل صفحات الويب. كقاعدة عامة، يتم تنسيق التعليمات البرمجية كملفات منفصلة بامتداد .js، والتي تكون متصلة بصفحات الويب، ولكن يمكن أيضًا تضمين رمز البرنامج مباشرة في رمز الصفحة. كل هذا يتم باستخدام العلامة. عندما يواجه المتصفح مثل هذا الرمز، فإنه ينفذه. يمكن العثور على تفاصيل حول العلامة على w3school.com. على وجه الخصوص، دعونا نفكر في مثال يوضح كيفية العمل مع صفحة ويب باستخدام JavaScript، الموضح في هذا المورد. يمكن أيضًا تشغيل هذا المثال باستخدام هذا المورد (ابحث عن الزر جربه بنفسك)، لكننا سنفعل ذلك بشكل مختلف قليلاً. لنقم بإنشاء ملف جديد في أحد برامج تحرير النصوص (على سبيل المثال، في VS Code أو Notepad++)، والذي سنسميه hello.html، ونضيف إليه الكود التالي:

document.getElementById("hello").innerHTML = "مرحبا أيها العالم!";
نحن هنا مهتمون أكثر بالسطر document.getElementById("hello").innerHTML = "Hello, World!"; وهو رمز JS. هذا الرمز محاط بعلامات الفتح والإغلاق. يعثر على عنصر HTML في المستند بالمعرف hello ويغير خاصية HTML الداخلية الخاصة به (أي كود HTML الموجود داخل هذا العنصر) إلى Hello، World! . إذا قمت بفتح الملف hello.html في المتصفح، فسيتم عرض النص المحدد.


إخراج الرسالة بواسطة JavaScript إلى عنصر HTML

كما ذكرنا سابقًا، يمكنك تجربة الأمثلة الواردة على موقع الويب w3school.com على الفور. هناك أيضًا بيئات متخصصة عبر الإنترنت لتطوير الويب، وعلى وجه الخصوص، لتنفيذ كود JS. من بينها، على سبيل المثال، codepen.io، jsfiddle.net، jsbin.com.

هنا، على سبيل المثال، هو ما يبدو عليه مثالنا، والذي تم إعادة إنشائه باستخدام CodePen.


يحتوي حقل HTML على الكود الذي يصف عنصر HTML، ويحتوي حقل JS على كود JavaScript، ويتم عرض النتيجة في أسفل الصفحة.

قلنا أعلاه أنه يمكن تنفيذ برامج JavaScript على منصات مختلفة، إحداها هي بيئة خادم Node.js. إذا كنت ستتعلم JavaScript مع التركيز على التطوير من جانب الخادم، فمن المحتمل أن تقوم بتشغيل أمثلة باستخدام Node.js. يرجى ملاحظة أنه، ببساطة، ودون الأخذ في الاعتبار الدعم المحدد لميزات لغة معينة من خلال إصدارات Node.js والمتصفح المستخدم، سيتم تشغيل نفس الكود في Node.js وفي المتصفح، الذي يستخدم الآليات الأساسية من اللغة. أي، على سبيل المثال، سيعمل الأمر console.log("Hello, World!") في كلا المكانين. لن يتم تشغيل البرامج التي تستخدم آليات خاصة بالمتصفح في Node.js (وينطبق الشيء نفسه على محاولات تشغيل برامج Node.js في المتصفح).

من أجل إطلاق "مرحبًا بالعالم!" في بيئة Node.js، قم بتثبيت Node.js عن طريق تنزيل التوزيع المناسب من هنا. لنقم الآن بإنشاء ملف hello.js ووضع الكود التالي فيه:

Console.log("مرحبًا بالعالم!");
باستخدام سطر الأوامر، انتقل إلى المجلد الذي تم تخزين هذا الملف فيه وقم بتشغيل الأمر التالي:

عقدة hello.js
وهذه هي نتيجة تنفيذه:


إخراج الرسالة بواسطة Node.js

بالمناسبة، ربما لاحظت (وعلى الأرجح لاحظت إذا كتبت الكود بنفسك) أنه في بعض الأمثلة المذكورة أعلاه، يتم استخدام الفواصل المنقوطة في نهاية الأسطر، بينما لا يتم استخدامها في حالات أخرى. في بعض الحالات، يكون النص الذي نريد إخراجه إلى وحدة التحكم أو كرسالة محاطًا بعلامات اقتباس مزدوجة، وفي حالات أخرى، بعلامات اقتباس مفردة. الآن ربما تتساءل عن سبب ذلك، وكيف، إذا كانت الإصدارات المختلفة من الكود تعمل بدون أخطاء، فيمكنك كتابة هذا الكود بشكل صحيح. إذا أجبنا على هذا السؤال دون الخوض في التفاصيل ودون مراعاة بعض التفاصيل الصغيرة، فيمكننا القول إن استخدام علامات الاقتباس والفواصل المنقوطة مقبول، وأنهما يعملان بنفس الطريقة. يعتمد اختيار خيار معين على أسلوب الترميز الذي يتبعه المبرمج وعلى احتياجات جزء معين من البرنامج. بالإضافة إلى ذلك، من خلال هذه الأمثلة البسيطة يمكنك أن تشعر بإحدى السمات المميزة لجافا سكريبت، وهي أن اللغة تمنح المبرمج حرية معينة.

الآن بعد أن تعرفت للمرة الأولى على JavaScript، نقترح عليك التحدث بمزيد من التفاصيل حول هذه اللغة.

فهم جافا سكريبت JavaScript هي واحدة من لغات البرمجة الأكثر شعبية في العالم. تم إنشاؤه منذ أكثر من 20 عامًا، وقد قطع شوطًا طويلًا في تطويره. كان المقصود من JavaScript أن تكون لغة برمجة للمتصفحات. في البداية، كان لديه قدرات أكثر تواضعا من الآن. تم استخدامه بشكل أساسي لإنشاء رسوم متحركة بسيطة، مثل القوائم المنسدلة، وكان معروفًا كجزء من تقنية HTML الديناميكية (DHTML، HTML الديناميكي).

مع مرور الوقت، نمت احتياجات بيئة الويب، على وجه الخصوص، ظهرت واجهات برمجة التطبيقات الجديدة، وكانت JavaScript بحاجة إلى مواكبة التقنيات الأخرى لدعم تطوير الويب.

في هذه الأيام، يتم استخدام JS ليس فقط في المتصفحات التقليدية، ولكن أيضًا خارجها. على وجه الخصوص، نحن نتحدث عن منصة خادم Node.js، وإمكانيات استخدام JavaScript في تطوير التطبيقات المدمجة والمحمولة، وحل مجموعة واسعة من المشكلات التي لم يتم استخدام JavaScript فيها من قبل.

الميزات الرئيسية لجافا سكريبت JavaScript هي لغة تحتوي على الميزات التالية:
  • مستوى عال. إنه يعطي للمبرمج تجريدات تجعل من الممكن تجاهل تفاصيل الأجهزة التي يتم تنفيذ برامج JavaScript عليها. تدير اللغة الذاكرة تلقائيًا باستخدام أداة تجميع البيانات المهملة. ونتيجة لذلك، يمكن للمطور التركيز على حل المشكلات التي تواجهه دون تشتيت انتباهه بآليات منخفضة المستوى (على الرغم من أنه تجدر الإشارة إلى أن هذا لا يلغي الحاجة إلى الاستخدام الرشيد للذاكرة). توفر اللغة أدوات قوية ومريحة للعمل مع أنواع مختلفة من البيانات.
  • متحرك. على عكس لغات البرمجة الثابتة، فإن اللغات الديناميكية قادرة أثناء تنفيذ البرنامج على تنفيذ الإجراءات التي تقوم بها اللغات الثابتة أثناء تجميع البرنامج. هذا الأسلوب له إيجابياته وسلبياته، ولكنه يمنح المطور ميزات قوية مثل الكتابة الديناميكية، والربط المتأخر، والانعكاس، والبرمجة الوظيفية، وتغيير الكائنات في وقت التشغيل، والإغلاق، وغير ذلك الكثير.
  • تمت كتابته ديناميكيًا. ليس من الضروري تحديد الأنواع المتغيرة أثناء تطوير JS. في نفس المتغير، على سبيل المثال، يمكنك أولاً كتابة سلسلة ثم عدداً صحيحاً.
  • كتبت بشكل ضعيف. على عكس اللغات المكتوبة بقوة، فإن اللغات المكتوبة بشكل ضعيف لا تجبر المبرمج، على سبيل المثال، على استخدام كائنات من أنواع معينة في مواقف معينة، وإجراء تحويلات ضمنية للنوع إذا لزم الأمر. وهذا يعطي المزيد من المرونة، ولكن برامج JS ليست آمنة للكتابة، مما يجعل التحقق من النوع أكثر صعوبة (يهدف TypeScript وFlow إلى حل هذه المشكلة).
  • قابل للتفسير. من المعتقد على نطاق واسع أن JavaScript هي لغة برمجة مفسرة، مما يعني أن البرامج المكتوبة بها لا تحتاج إلى تجميع قبل التنفيذ. في هذا الصدد، يتناقض JS مع لغات مثل C وJava وGo. من الناحية العملية، تقوم المتصفحات، لتحسين أداء البرنامج، بتجميع كود JS قبل تنفيذه. لكن هذه الخطوة واضحة للمبرمج ولا تتطلب جهدًا إضافيًا منه.
  • متعدد النماذج. لا تجبر JavaScript المطور على استخدام أي نموذج برمجة معين، على عكس، على سبيل المثال، Java (البرمجة الشيئية) أو C (البرمجة الحتمية). يمكنك كتابة برامج JS باستخدام النموذج الموجه للكائنات، على وجه الخصوص، باستخدام النماذج الأولية والفئات التي ظهرت في معيار ES6. يمكن أيضًا كتابة برامج JS بأسلوب وظيفي، نظرًا لحقيقة أن الوظائف هنا هي كائنات من الدرجة الأولى. تسمح JavaScript أيضًا بالعمل بالأسلوب الحتمي المستخدم في لغة C.
نعم، بالمناسبة، تجدر الإشارة إلى أن JavaScript وJava ليس لديهما أي شيء مشترك. هذه لغات مختلفة تمامًا. JavaScript ومعايير ECMAScript، أو ES، هو اسم المعيار الذي يرشد مطوري محركات JavaScript، أي تلك البيئات التي يتم فيها تنفيذ برامج JS. تقدم المعايير المختلفة ميزات جديدة في اللغة، عند الحديث عنها غالبًا ما يذكرون اسم المعايير في شكل مختصر، على سبيل المثال، ES6. ES6 هو نفسه ES2015، فقط في الحالة الأولى الرقم يعني رقم إصدار المعيار (6)، وفي الحالة الثانية سنة اعتماد المعيار (2015).

يحدث أنه في عالم برمجة الويب، كان معيار ES3، المعتمد في عام 1999، ذا صلة لفترة طويلة جدًا. لا يوجد إصدار رابع للمعيار (لقد حاولوا إضافة الكثير من الميزات الجديدة إليه ولم يتم قبولهم مطلقًا). في عام 2009، تم اعتماد معيار ES5، والذي كان تحديثًا ضخمًا حقًا للغة، وهو الأول منذ 10 سنوات. وبعد ذلك، في عام 2011، تم اعتماد معيار ES5.1، والذي يحتوي أيضًا على الكثير من الأشياء الجديدة. كما أصبح معيار ES6، الذي تم اعتماده في عام 2015، مهمًا جدًا من حيث الابتكارات. منذ عام 2015، يتم اعتماد إصدارات جديدة من المعيار كل عام.

أحدث إصدار من المعيار في وقت نشر هذه المادة هو ES9، الذي تم اعتماده في يونيو 2018.

النتائج اليوم كتبنا "مرحبا بالعالم!" في JavaScript، نظرت إلى السمات الرئيسية للغة وتحدثت عن توحيدها. في المرة القادمة سنتحدث عن أسلوب نصوص JavaScript والبنية المعجمية للبرامج.

القراء الأعزاء! إذا لم تكن على دراية بجافا سكريبت قبل قراءة هذه المادة، فيرجى إخبارنا إذا كنت قادرًا على تشغيل "Hello, World!"

جافا سكريبت هي في المقام الأول لغة من جانب العميل، وعادة ما تستخدم للعمل من جانب العميل. بمساعدتها، يمكنك تطوير التطبيقات بمجموعة واسعة من الوظائف. يمكن أن يكون هذا: نظيرًا للساعة الميكانيكية، ورسوم متحركة متنوعة، وتأثيرات رسومية، والمزيد. لا يوجد ما يمنعك من إنشاء تطبيق الويب بالكامل تقريبًا في JS.

من الصعب اليوم المبالغة في تقدير دور JavaScript على الويب. وفقًا لإحصائيات w3techs، يستخدم اليوم أكثر من 95% من مواقع الويب لغة JS. أما الـ 5% المتبقية فهي بشكل أساسي مواقع بطاقات العمل ومواقع الويب المكونة من صفحة واحدة. الشعبية المذهلة للغة تجعلها واحدة من أكثر اللغات المرغوبة للتعلم والمربحة من حيث التوظيف في المستقبل.

تأسست في عام 1995 من قبل نتسكيب. كان المقصود في البداية أن تكون لغة برمجة لمتصفح Navigator 2 الخاص بهم، وفي البداية كان يطلق عليها اسم LiveScript. استفاد المطورون من موجة شعبية Java وقاموا بتغيير الاسم إلى JavaScript. ومع ذلك، حتى يومنا هذا غالبا ما يتم الخلط بينهم من قبل المطورين المبتدئين. يدعي الكثير من الناس أن هذه اللغات متشابهة أو أن هناك اختلافات طفيفة. هذا ليس صحيحًا على الإطلاق، JS وJava لغتان مختلفتان تمامًا. التشابه الوحيد بينهما هو أسمائهم.

في البداية، لم يكن لدى JS معظم الوظائف المتاحة اليوم؛ وكانت قدراتها هزيلة للغاية. كان الهدف الرئيسي هو إضافة القليل من التفاعل إلى الصفحة. أراد المطورون معالجة النتائج بعد نقرات الزر في صفحة واحدة.

مع تطور الويب، ومع إصدار JavaScript، حصلت JavaScript على تفويض مطلق لتطوير العديد من الوظائف بشكل فعال. اليوم، توفر JS العديد من خيارات المطورين أكثر من أي وقت مضى.

يمكن الآن استخدام JavaScript كلغة من جانب الخادم. في السابق، كان يُنظر إلى JS دائمًا على أنها لغة من جانب العميل يتم تشغيلها حصريًا في متصفح المستخدم. للعمل مع الخادم، كان علي استخدام شيء مثل . هذا جعل من الممكن تشغيل الطلبات على الخادم باستخدام JS.

على الرغم من القدرة على تنفيذ جانب الخادم في Node JS، فإن معظم الويب يستخدم لغة PHP لهذا الغرض. وهذا ليس نتيجة العادة فحسب، بل أيضًا نتيجة عدم الحاجة إلى لغة أخرى.

في العالم الحديث، هناك طفرة في تطوير الأجهزة المحمولة، حيث وجدت جافا سكريبت مكانًا لها. يساهم هذا في زيادة إنتاجية الأدوات المحمولة والاستخدام الواسع النطاق لـ HTML5. يتيح لك JS تنفيذ مجموعة واسعة من الميزات حتى في تطبيقات الهاتف المحمول.

نظرًا لإصدار إصدارات جديدة من Windows بدءًا من الإصدار 8 والأحدث، بدأ استخدام JavaScript لتطوير تطبيقات سطح المكتب لأنظمة التشغيل المدرجة. بمعنى آخر، لقد تجاوزت JS منذ فترة طويلة نطاق لغة الويب التي يستخدمها المتصفح حصريًا.

تم الآن تنفيذ الكثير مما كان يسمى بالخيال العلمي بنجاح في جافا سكريبت. وهذا واضح بشكل خاص في المجال الشهير لبرمجة إنترنت الأشياء. وبذلك يمكن استخدام JS بنجاح لتطوير برامج المياه بواسطة جميع الأجهزة الذكية الموجودة والتي تدعم الإنترنت. اليوم، يتم العثور على JS في كل مكان تقريبًا وصلت إليه تكنولوجيا المعلومات. إنها في الواقع لغة شائعة وعملية بشكل لا يصدق وتخطط لمواصلة التطور.

حتى أثناء ظهور اللغة، أنشأت متصفحات Netscape وIE العديد من التطبيقات المختلفة للغة. لتوحيد جميع التطبيقات واستعادة القاسم المشترك، تم تطوير معيار ECMAScript (تولت ECMA إدارة التقييس). إذا رأيت مصطلح ECMAScript في أي مكان، فهو مرادف قابل للتبديل مع JavaScript.

بالفعل، قامت ECMA اليوم بتطوير معيارين لـ JS، وهما يعكسان بنجاح التقدم المحرز في تطوير اللغة نفسها. اليوم، يعتبر إصدار ECMAScript 6 من عام 2015 حاليًا. ومع ذلك، لا تزال العديد من المتصفحات بعيدة عن التنفيذ الكامل لهذا المعيار. وقد يستغرق الأمر عدة سنوات أخرى لاستكمال تنفيذه. لهذا السبب، غالبًا ما يُعتبر ES5 هو المعيار الذي تدعمه المتصفحات الحديثة بشكل كامل.

جافا سكريبت هي لغة مترجمة، وهذا يعني أنه يتم تنفيذها من خلال مترجم. يتلقى جميع التعليمات اللازمة من JS ويتبعها عن طريق تنفيذ التعليمات البرمجية أو تفسيرها.

ادوات التطوير

لإنشاء تعليمات برمجية في JS، تحتاج فقط إلى محرر نصوص ومتصفح يمكنك من خلاله اختبار النتيجة. أحد برامج تحرير النصوص البسيطة والوظيفية التي أوصي باستخدامها هو برنامج Notepad++. بشكل عام، يمكنك استخدام أي مناسبة.

تدعم JavaScript أيضًا عددًا من بيئات التطوير، مثل Visual Studio وWebStorm وNetbeans. إنها تساعدك على إنشاء التعليمات البرمجية بشكل أسرع وأسهل.

دورات إضافية

يمكنك العثور على موقعنا على الإنترنت على دورات إضافية حول لغة جافا سكريبت. يتم تقديم كافة الدورات على.

أمثلة في كل فصل

باستخدام محرر Try It Yourself، يمكنك تحرير جميع الأمثلة ومعاينة النتائج.

مثال جافا سكريبت الأول الخاص بي انقر فوقي لعرض التاريخ والوقت تعلم من الأمثلة

الأمثلة أفضل من 1000 كلمة. غالبًا ما تكون الأمثلة أسهل في الفهم من التفسيرات النصية.

يكمل هذا البرنامج التعليمي جميع الشروحات بأمثلة "جربها بنفسك" المحسّنة.

إذا قمت بتجربة جميع الأمثلة، فسوف تتعلم الكثير عن JavaScript، في وقت قصير جدًا!

لماذا نتعلم جافا سكريبت؟

JavaScript هي إحدى اللغات الثلاث التي يحتاج جميع مطوري الويب إلى تعلمها:

1. HTML تحديد محتوى صفحات الويب

2. CSS تحديد تخطيط صفحات الويب

3. سلوك صفحة الويب الخاصة ببرمجة جافا سكريبت

صفحات الويب ليست المكان الوحيد الذي يتم فيه استخدام JavaScript. تستخدم العديد من برامج سطح المكتب والخادم JavaScript. العقدة. JS هو الأكثر شهرة. بعض قواعد البيانات، مثل MongoDB وCouchDB، تستخدم أيضًا JavaScript كلغة برمجة.

هل كنت تعلم؟

JavaScript وJava هما لغتان مختلفتان تمامًا، سواء من حيث المفهوم أو التصميم.

تم اختراع JavaScript بواسطة Brendan Eich في عام 1995، وأصبح معيار ECMA في عام 1997.
ECMA-262 هو الاسم الرسمي للمعيار. ECMAScript هو الاسم الرسمي للغة.

معدل التعليم

في هذا البرنامج التعليمي، سرعة التعلم هي اختيارك.

كل شيء متروك لكم.

إذا كنت تواجه صعوبة، خذ قسطًا من الراحة أو أعد قراءة المادة.

تأكد دائمًا من أنك تفهم جميع أمثلة "جربها بنفسك".