in

سلسلة علوم الحاسوب (5) تكلم مع الحاسوب بلغته، وعلى قدر فهمه

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

لغات يفهمها الحاسوب

والسؤال هو: ما معنى لغة برمجة ومما تتكون؟

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

تُقَسم لغات البرمجة بناء على قربها من اللغات الإنسانية إلى لغة عالية المستوى high level language قريبة من اللغة التي يفهمها البشرمثل Java ولغة منخفضة المستوى low level language مثل Assembly وهي قريبة من لغة الآلة.

أما بالنسبة لأشهر لغات البرمجة فتتوقف شهرة اللغة على المجال الذي تُطبق فيه وسنستعرض أبرز المجالات وأشهر لغات البرمجة المستخدمة في هذه المجالات:

1- تطوير التطبيقات والبرامج Application and Program development

تتضمن البرامج التي نتعامل معها يومياً مثل (متصفح الإنترنت) وأشهر اللغات التي يتعامل معها هذا المجال هي (C C# , C++,Java, Visual Basic,).

2- تطوير الذكاء الاصطناعي Artificial Intelligence development

يهتم مجال الذكاء الاصطناعي (والمجالات ذات صلة به) بجعل الجهاز يتفاعل مع الإنسان بطريقة تشبهه وجزء من البرنامج لاتخاذ القرارات مثل البوتات التفاعلية (chatbots) . وأشهر لغات البرمجة التي تتعامل مع هذا المجال (AIML,python,c++,c#,prolog).

3- تطوير الألعاب Game development

يتضمن تطوير ألعاب الحاسوب والبرامج الترفيهية الأخرى وأشهر لغات البرمجة التي تتعامل معها (Darkbasic,C,C++,C#, Java).

4-  تطوير الإنترنت Internet development

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

(HTML ,JSP ,JavaScript ,PHP, Python)

5- تطوير قواعد البيانات database development

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

ولغات البرمجة التي تتعامل معها:

(DBASE, FoxPro, MySQL, SQL, Visual FoxPro)

مبادئ قواعد النحو فى عالم الحاسوب

بعد أن تحدثنا عن لغات البرمجة وأشهر تطبيقاتها  سنتوجه الآن الى الإجابة عن السؤال التالي: ما هي المتغيرات وكيف يتعامل معها الحاسوب؟

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

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

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

ولكن كيف يمكن اختيار اسم المتغير؟

تسمية المتغيرات قواعد يجب الاهتمام بها، والأخطاء في تسمية المتغيرات ينتج عنها أخطاء برمجية، وهذه القواعد كالتالي :
-1 يجب ألا يبدأ اسم المتغير برقم, ولكن يمكن أن يحتوي على أرقام .
2- يجب ألا يحتوي اسم المتغير على أية رموز, ماعدا الشرطة السفلية ( _ ) .
-3يجب ألا يحتوي اسم المتغير على مسافات, ويمكن استبدال المسافة باستخدام الشرطة السفلية مثل: Khalid_Ali .
-4يجب ألا يكون اسم المتغير هو إحدى الكلمات المحجوزة (keywords) لأن هذا سيسبب الارتباك للمترجم أثناء ترجمة البرنامج لهذا منع تسمية المتغيرات بالكلمات المحجوزة, مثلاً لايمكنك تسمية المتغير بالاسم double لانها إحدى الكلمات المحجوزة.
-5  يجب أن يتكون اسم المتغير من كلمة واحدة فقط, وفي حالة وجود أكثر من كلمتين قم بدمجهما معاً مثل KhalidAli أو الاستعانة بالشرطة السفلية مثل Khalid_Ali
-6 أسماء المتغيرات حساسة لحالة الأحرف, أي أن المتغير Khalid  يختلف عن المتغير khalid ويختلف أيضاً عن khaliD.
-7  لا يمكنك تسمية متغيرين بنفس الاسم وعند حصول هذا سيعطيك المترجم رسالة خطأ،
يفضل عند اختيار اسم للمتغير أن يكون موافقاً لدلالة هذا المتغير, مثلاً لو أردت استخدام متغير يدل على الطول فيفضل أن تسميه length  أو أي اسم يدل على الطول ولا تقم بتسميته x أو y مع انه يجوز لك هذا إلا أنه قد يسبب الارتباك اثناء محاولة  قراءتك أو قراءة الآخرين لبرنامجك .

تعليم الحاسوب كيف يتخذ القرار

والآن سنتحدث عن  كيف يأخذ الحاسوب قراراته التي هي عن طريق الجُمل الشرطية, فالجُمل الشرطية مثل (for, switch, if) وسنبدأ بقاعدة if .

يُكتب الشرط  بين القوسين ( ) ففي حالة حدوث الشرط يقوم المُترجم compiler بتنفيذ ما بين الاقواس { } وفي حالة عدم حدوث الشرط  تتحقق جملة else. ويمكن استخدام جملة if else بعد جملة if وتستخدم كأنها if .

أمر switch تتكون من ثلاث أجزاء مهمة الجزء switch وبينه نكتب المتغير، الجزء الثاني هو case وهي تماماً كالشرط الذي يوجد بداخل if، فإذا كانت القيمة بداخل case مساوية للقيمة بجانب swtich يتحقق ما تحتها، والجزء الثالث هو break، وبهذا الأمر نقوم بمعالجة كل حالة لوحدها وفي الأخير فقط الخروج من هذه الحالة وذلك لمعالجة حالة أخرى. هناك جزء أخر هو default وهو مقابل else وينفذ عند عدم تحقق أي شرط من الشروط.

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

ويكون على الصورة التالية:

For (if condition is true){
Repeat that part
}

المصادر:

  • إعداد: أحمد سمير.
  • مراجعة: أحمد سعد.
  • تدقيق لغوي: داليا المتني.

بواسطة الفضائيون

اترك تعليقاً

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

هل يمكن تخزين المعلومات على DNA؟

سلسلة علوم الحاسوب (6) الخوارزميات والكفاءة الحاسوبية