×
اساسيات لغات البرمجة

اساسيات لغات البرمجة 


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

المقصود بلغة البرمجة

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

أنواع لغات البرمجة

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

1. اللغة بسيطة المستوى

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

  • لغة الأجهزة:

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

  • لغة التجميع:

تُعرف لغة التجميع بأنها لغة برمجة من الجيل الثاني حيث تتضمن التعليمات تسميات رمزية تكون قابلة للقراءة بواسطة البشرة. ويلزم توفر طرف مُجمع لتحويل التعليمات البرمجية في لغة التجميع إلى تعليمات تفهمها الأجهزة. كما تكمن مزايا لغة التجميع في حاجتها إلى أقل مساحة من الذاكرة وإمكانية تنفيذها في وقت قصير.

2. اللغة عالية المستوى

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

  • لغة البرمجة الإجرائية (POP):

تستند لغة البرمجة الإجرائية إلى مفهوم استدعاء الإجراء. وهي مشتقة من البرمجة المهيكلة. يتم في لغة البرمجة الإجرائية تقسيم البرنامج إلى إجراءات تُعرف باسم الروتينات/الوظائف. ويتيح هذا الأمر إمكانية إعادة استخدام التعليمات البرمجية في أجزاء مختلفة.

  • لغة البرمجة الموجهة للكائنات (OOP):

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

  • اللغة الطبيعية:

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

3. اللغة متوسطة المستوى

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

السبب وراء وجود بعض لغات البرمجة التي تعمل أفضل من غيرها

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

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

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