ما هي جافا سكريبت JavaScript
إن كنت من عشاق البرمجة فلا بد أنك حالما ترى اللون الأصفر ستفكر في البرمجة بسرعةٍ. أما من وصل هنا بحثًا عما سنتحدث عنه فستنضم إلى مجتمع اللون الأصفر بعد قراءتك هذه السطور معنا.
نعم وكما لا يخفى على أحدٍ أن الأصفر يحملنا مباشرةً إلى التفكير بالجافا سكريبت. لكن هل تملك المعلومات الكافية عنها؟! بماذا تختلف عن بقية لغات البرمجة؟ في هذا المقال سنتعرف على مجالات استخدام الجافا سكريبت وأهم ميزاتها. لكن لنلقي الضوء على تعريفٍ مبسطٍ لها لتتكون لديك الفكرة الصحيحة عنها.
ما هي الجافا سكريبت
الجافا سكريبت هي لغة برمجةٍ عالية المستوى تستخدم عادةً في تطوير المواقع. قامت شركة نتسكيب Netscape بتطويرها كوسيلةٍ لإضافة عناصرٍ ديناميكيةٍ وتفاعليةٍ للمواقع.
تتأثر الجافا سكريبت بلغة الجافا بشكلٍ كبيرٍ، وتتشابه في تركيبها بلغة C وهي مبينةٌ على ECMAScript والتي هي لغة برمجةٍ وضعتها شركة صن ميكروسيستيمز Sun Microsystems. ومع مرور الوقت حلت محل مجموعةٍ متنوعةٍ من لغات البرمجة الأخرى لتصبح معيارًا لبرمجة المتصفحات.
تطور الجافا سكريبت
ابتكر لغة الجافا برندان ايش عام 1995 تحت اسم موكا أثناء عمله في شركة نتسكيب، مستلهمًا إياها من لغة جافا Java وسكيم Scheme وسيلف Self.
لم تلقَ هذه اللغة الاهتمام في البداية إلا أنها ومع الوقت أصبحت تشكل مصدر اهتمامٍ للعديد من المبرمجين بعد إضافة تقنياتٍ جديدةٍ ودعمها للغة الجافا وأطلق عليها اسم جافا سكريبت.
ميزات الجافا سكريبت
تستخدم الجافا سكريبت في البرمجة من طرف العميل أو ما تدعى client side لكنها تتميز بالعديد من التقنيات والميزات والتي نورد منها:
- تنفذ من جهة العميل، فعلى سبيل المثال يمكنك التحقق من صحة أي مدخلاتٍ قبل إرسال الطلب إلى المخدم.
- تعتبر لغةً سهلة التعلم نسبيًا وقريبةً من اللغة الإنجليزية.
- لغة برمجة مستقلة وليست كما يعتقد البعض أنها مرتبطةٌ بلغة جافا.
- توفر خدمات تحكمية أكبر بالمتصفحات.
- تفاعلية وسريعة.
- تتميز بواجهات غنية ويمكنك سحب وإسقاط المكونات لتغني واجهتك بالعناصر المطلوبة.
- لغة برمجة وظيفية.
قيود الجافا سكريبت
- مشكلات الأمان: بما أن معظم التعليمات البرمجية يتم تنفيذها على الحاسب الخاص بالمستخدم، فيمكن استغلالها في بعض الأحيان لأغراضٍ ضارةٍ، الأمر الذي يستدعي العديد من الناس إلى تعطيلها.
- لا تتيح قراءة الملفات أو كتابتها من جهة العميل.
- لا يمكن استخدامها في تطبيقات الشبكات إذ لا يتوفر الدعم المناسب لذلك.
- لا تدعم التنفيذ متعدد الخيوط multithreading وهي تقنيةٌ يتم فيها التنفيذ في عدة مساراتٍ بنفس الوقت على نفس المعالج.
- يختلف عرض الجافا سكريبت بين مختلف المتصفحات ومحركات البحث الأمر الذي يتسبب في عدم تناسق الواجهة والوظائف في بعض الأوقات.
الفرق بين الجافا سكريبت والجافا
لا بد أن تسمية الجافا سكريبت يجعلنا نعتقد أن الجافا سكريبت مرتبطةٌ بلغة الجافا. على الرغم من أن كليهما تستند إلى لغة C وتستخدم في تطبيقات الويب من جانب العميل، لكن سنوضح في السطور التالية بعض الفروق بينهما:
لا نستطيع إنكار حقيقة أن كلًا من الجافا والجافا سكريبت هي لغة برمجة تستخدم لتطوير التطبيقات أو الميزات المختلفة لصفحات الإنترنت، إلا أن الكود الخاص بكلٍ منهما يختلف عن الآخر.
الفرق الأكبر يتمثّل في نوع التطبيقات المستخدمة؛ إذ يتم تشغيل تطبيقات الجافا إما من سطح المكتب أو من خلال صفحة الويب وهي برامجٌ مستقلةٌ وعادةً ما تفتح نافذة برنامجٍ منفصلةٍ. وإن لم تقم بتثبيت الجافا فلن تتمكن من تشغيل التطبيقات الخاصة بها على جهازك. في حين يتم عادة تضمين الجافا سكريبت في جميع المتصفحات الحديثة وبالتالي ستكون قادرًا على استخدامها بسهولةٍ عند تحميل صفحة الويب. ويمكن من خلال الجافا سكريبت إنشاء التطبيقات المختلفة في صفحة الويب نفسها، إذ يمكنك أن تطور ألعاب الفيديو أيضًا وتقوم بالعمل عليها في نافذة المتصفح.
تستند عادةً برامج الجافا على إجراء الحسابات والتفكير المنطقي وتعمل على البرمجة من جهة الخادم بشكلٍ كبيرٍ أما الجافا سكريبت فيتركز عملها على جانب العميل. الأمر الذي يجعل من الجافا سكريبت أسرع.
في حين يمكن استخدام الجافا لتطوير برامجٍ ضخمةٍ، إلا أنها تتطلب مساحةً ذاكريةً كبيرةً غالبًا والتي من الممكن أن تتسبب ببطءٍ في عمل الحاسب أو بطء في عمل برنامجٍ آخر. في المقابل تعمل الجافا سكريبت بمساحةٍ ذاكريةٍ صغيرةٍ لذا شاع استخدامها بشكلٍ كبيرٍ في العديد من صفحات الويب بسبب متطلبات الذاكرة المنخفضة والقدرة على توفير العديد من المزايا الفريدة.