عالم البرمجة مليء بالمصطلحات التي تبدو متشابهة، ومن ضمن هذه المصطلحات هو مصطلح Scripting Languages أي لغات السكربت ومصطلح Programming Languages أي لغات البرمجة، فإذا كنت مبرمج فبكل تأكيد أنك سمعت بهذين المصطلحين.

ولكن هل تسألت عن مامعنى هذين المصطلحين؟ وما الفرق بينهما؟

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

تعريف لغات السكربت Scripting Languages

تستخدم عادة لأتمتة العمليات أو إضافة وظائف بسيطة إلى برامج وأنظمة موجودة. ويتم تشغيل الأكواد المكتوبة بلغات السكربت عن طريق مفسر “interpreter” مباشرة دون الحاجة إلى عملية ترجمة كما يحدث في لغات البرمجة. ومن أشهر لغات السكربت هي: (Rupy – PHP – JavaScript – Python)

تعريف لغات البرمجة Programming Languages

تستخدم لإنشاء تطبيقات وأنظمة برمجية معقدة، وتعتمد هذه اللغات عادةً على المترجم “Compiler” لتحويل الأكواد المكتوبة إلى لغة الآلة التي يفهمها الحاسوب. ومن أشهرها لغات مثل: (Java – Go – C# – C++ – C).

الفرق بين لغات السكربت Scripting Languages ولغات البرمجة Programming Languages

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

هذا هو الإختلاف الأساسي والجوهري بين التصنيفين، والجدول التالي يوضح باقي الإختلافات.

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

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

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

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *