ما الفرق بين البرمجة والبرمجة النصية programming Vs Scripting؟

اقرأ في هذا المقال


ما هي البرمجة programming؟

في لغات البرمجة (Programming languages)، يتم تجميع (compile) لغة البرمجة في كود الآلة (machine code)، ويتم تشغيلها على نظام التشغيل (OS)، يجب أن يتم استخدام بيئة التطوير المتكاملة (Integrated Development Environment) أو (IDE) للاستفادة من لغات البرمجة، حيث يقوم المبرمج بكتابة مجموعة من التعليمات لجهاز الكمبيوتر لتحقيق هدف معين، ويمكن أيضًا كتابة الخوارزميات عن طريق كتابة البرامج (programs).

وهناك العديد من لغات البرمجة، والتي تتحكم بها وثائق محددة، مثل، لغة (Perl)، في حين أن اللغات الأخرى لها تطبيق يتحكم بها، ويتم التعامل معه كمرجع، مثال، (لغة برمجة C) لها معيار (ISO) مرتبط بها.

تُستخدم لغة البرمجة أساسًا لتحويل البيانات البرمجية، في الواقع يحدث هذا عن طريق إنشاء تعليمات وحدة المعالجة المركزية (CPU)، والتي تكتب بيانات الإدخال في الإخراج، مثل عند حل مجموعة معادلات من مجموعة شروط، تعتبر لغات البرمجة مثل (Java) و (Scala) و (C) و (++C) وما إلى ذلك، لغات للأغراض العامة، ويسموا لغات البرمجة المُترجِمة، وتحتاج إلى كتابة الكود المصدر عن طريق إضافة بعض النصوص، ثم تشغيلها من خلال مترجم (compiler)، والذي يقوم بإنشاء تعليمات ثنائية.

ما هي البرمجة النصية Scripting؟

من خلال لغات البرمجة النصية (Scripting languages)، يمكن تشغيل تطبيقات البرامج، وصفحات الويب داخل متصفح الويب، و غلاف (shell) لنظام التشغيل، ولا تتطلب لغات البرمجة النصية، مثل (JavaScript) و (Perl) و (VBScript) وما إلى ذلك، أن يتم تجميعها (compile)، ويكون لها وصول أقل إلى قدرات الكمبيوتر، نظرًا لأنها تعمل على مجموعة فرعية من لغة البرمجة الأصلية، من الأمثلة على ذلك أن (JavaScript)، لن تتمكن من الوصول إلى نظام الملفات الخاص بك.

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

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

جدول للمقارنة بين البرمجة والبرمجة النصية:

أساس المقارنة بين البرمجة والبرمجة النصية البرمجة programming

البرمجة النصية 

scripting

 مثالJava, C++, CJavaScript, Perl, Python
التنفيذالترجمة Compiled.التفسير Interpreted.
التعلميمكن أن يستغرق قدرا كبيرا من الوقت.أسهل في التعلم من لغة البرمجة.
طبيعة الكود

كود مكثف.

أقل كثافة في الكود مقارنة بلغة البرمجة التقليدية.

المتطلبات

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

التشكيل

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

المصدر: Programming vs ScriptingIs There a Difference between Scripting and CodingWHAT’S THE DIFFERENCE BETWEEN SCRIPTING AND CODING?ELI5:What is the difference between script and code?


شارك المقالة: