القائمة الرئيسية

الصفحات

البرمجة الإجرائية Procedural Programming
البرمجة الإجرائية Procedural Programming


البرمجة الإجرائية Procedural Programming

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

هنا مصطلح مهم هو "نماذج البرمجة" Programming Paradigm:

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

ما هي البرمجة الإجرائية Procedural Programming ؟؟

البرمجة الإجرائية هي طريقة فرعية تتبع نموذج البرمجة الحتمية Imperative Programming، مما يعني أن المبرمج يزود الجهاز (الكمبيوتر، والهاتف الذكي، والجهاز الذكي، والمتحكم الدقيق، وما إلى ذلك) بالخطوات اللازمة والمحددة لتنفيذ هدف البرنامج، وهذا يعني أن هذا النوع من البرمجة مشابه كيف يعمل المعالج نفسه يقوم المعالج بتنفيذ التعليمات واحدًا تلو الآخر لتنفيذ عملية تشبه ما يتم في مجال البرمجة الإجرائية، حيث يتكون البرنامج من مجموعة من "الإجراءات" التي يتم استدعاؤها وتنفيذها لتحقيق هدف البرنامج كما ككل. في هذا السياق، قد يُساء فهم كلمة "إجراء" على أنها "وظيفة"، وهذا خطأ: التبعيات تولد ناتجًا وتعيد قيمًا محددة وفقًا للوسطاء الذين يتم تمريرهم إليهم، أي وفقًا للدخل الذي يمر إلى تابع، سوف نحصل على ناتج معين. الإجراء ليس تابعًا لأنه قد لا يرجع ببساطة أي قيمة، لأن الهدف المطلوب منه هو أداء مهمة محددة.
من المهم معرفة أهم الخصائص المتعلقة بالبرمجة الإجرائية، وهي عدم اتساق البيانات
البيانات والوظائف بأي شكل من الأشكال، أي، على سبيل المثال، لا يمكن إنشاء كيان ضمن نموذج البرمجة الإجرائية التي لديها تبعيات وبيانات كأعضائها. يمكن أن تتفاعل الوظائف والبيانات المختلفة مع بعضها البعض ضمن الإجراءات، ولكنها في الأساس كيانات منفصلة. مثال بسيط من إحدى اللغات التي تدعم نموذج البرمجة الإجرائية، بمعنى لغة C. لنفترض أننا نريد كتابة برنامج بسيط يحسب مربع الأرقام الموجبة من 1 إلى 10 ثم يعرض القيم على الشاشة. يمكن تنفيذ مثل هذا البرنامج باستدعاء إجرائي بسيط يتكون من حلقة تكرارية تبدأ من 1 وتنتهي بعشرة يمكنك حفظ مربع الأرقام ضمن صفيف من 10 قيم. يأخذ هذا البرنامج الشكل التالي في C:
إن تعلم قواعد لغات البرمجة وكيفية برمجة النصوص البرمجية هو الخطوة الأولى التي يجب على المتعلمين الجدد اتخاذها، وعلى الرغم من أهميتها، فإن تعلم قواعد اللغة ومكوناتها هو شرط ضروري ولكنه غير كاف لكتابة البرامج بأكبر قدر ممكن من الكفاءة، حيث يمكن دائمًا فهم البرمجة على أنها ذات شقين: الشق الأول هو النص Syntax
الشق الثاني هو معنى دلالات.
هناك طرق مختلفة ومتنوعة لإعطاء النص "معنى"، أي لجعل البرنامج هدفًا مفيدًا، مثل كتابة برنامج يقوم بعمليات حسابية بسيطة، أو قراءة قيم أجهزة استشعار درجة الحرارة والرطوبة لمعرفة شروط الوسط المحيط، أو ربط أو فهم الأوامر الصوتية القادمة من المستخدم لتشغيل جهاز في المنزل. كل هذه البرامج لها معنى بمعنى أنها تحقق غرضًا مفيدًا، وما يهمنا هنا هو كيف يمكن استخدامها لتوفير "المعنى" للبرامج المختلفة. هنا مصطلح مهم هو "نموذج البرمجة" ، والذي يمكن رؤيته كطريقة لتصنيف لغات البرمجة وفقًا للإجراء المستخدم لتنفيذ البرامج. ، قد يكون مفهوم نماذج البرمجة غامضًا في البداية للمتعلمين الجدد ،ومع ذلك ، مع زيادة الخبرة وتعقيد المشاريع التي تحتاج إلى التنفيذ ، سيجد المطور نفسه بحاجة إلى تحديد الطريقة التي سيكتب بها البرنامج ، بينما قد تجد نفس المشكلة حلولًا باستخدام نماذج مختلفة و الأساليب ، والهدف هنا هو توفير حل يوفر أفضل أداء وأقل تكلفة ممكنة سواء كان برنامج متحكم أو تطبيق هاتف ذكي أو برنامج كمبيوتر شخصي. البرمجة الإجرائية هي طريقة فرعية تتبع نموذج البرمجة الحتمية ، مما يعني أن المبرمج يزود الجهاز (الكمبيوتر والهاتف الذكي والجهاز الذكي والمتحكم الدقيق وما إلى ذلك) بالخطوات اللازمة والمحددة لتنفيذ هدف البرنامج وهذا يعني أن هذا النوع من البرمجة يشبه إلى حد كبير طريقة عمل المعالج نفسه: يقوم المعالج بتنفيذ التعليمات واحدًا تلو الآخر لتنفيذ العملية ، وهو مشابه لما يتم القيام به في مجال البرمجة الإجرائية ، حيث يتكون البرنامج من مجموعة من "الإجراءات" التي يتم استدعاؤها وتنفيذها لتحقيق هدف البرنامج ككل.

متى نستخدم البرمجة الإجرائية؟

البرمجة الإجرائية هي أبسط طريقة ونهج للبرمجة ومن الإنصاف القول إنها تمثل أول شيء يستخدمه المبرمجون الجدد، حيث أن معظم لغات البرمجة تتضمن هياكل التحكم Control Structures يساعد المبرمجين على كتابة إجراءات مختلفة، مثل الحلقات المتكررة Repetitive Loops والبيانات الشرطية. Conditional Statements.  مرة أخرى، يعني منطق البرمجة الإجرائية كتابة مجموعة من التعليمات المحددة التي تؤدي المهمة المطلوبة
وبدون وجود ارتباط عضوي بين البيانات والمتغيرات والإجراءات المستخدمة. بهذه الطريقة، يكون وضع البرمجة هذا مناسبًا بشكل عام للحالات التالية:
عندما يمكن وصف الوظيفة المطلوبة باستخدام النهج من أعلى إلى أسفل، أي أن تدفق البيانات والبيانات له اتجاه واحد، يتم وصفه من خلال سلسلة من الإجراءات والشروط التي يتم تنفيذها واحدة تلو الأخرى.
عندما يتم تنفيذ المهمة "ثابتة"، أي أنها ستظل ثابتة ومحددة طوال فترة الاستخدام بحيث لا تكون هناك حاجة لإضافات للتحويلات أو بيانات أو إجراءات جديدة في مراحل لاحقة. عندما لا تكون حماية البيانات للوظيفة المطلوبة مهمة للغاية، لا توفر البرمجة الإجرائية آليات فعالة لحماية البيانات بخلاف البرمجة الموجهة الغرض.
عندما لا تكون هناك حاجة لإعادة استخدام البرنامج النصي. لأن هذه الطريقة تعتمد على كتابة تعليمات واضحة ومحددة،
، سيكون من الصعب إعادة استخدام نفس البرنامج النصي لأداء وظيفة أخرى مماثلة، وغالبًا ما يمتلك المبرمج مثل هذه الحالات لكتابة برنامج آخر.
كمثال بسيط على الأفكار السابقة، لنفترض أننا نريد كتابة برنامج يقرأ ويطبع قيم مستشعر درجة الحرارة على شاشة كريستال LCD سائلة باستخدام متحكم دقيق
طالما أن الوظيفة المطلوبة للبرنامج هي قراءة قيمة المستشعر وعرضها على الشاشة، وطالما أن هذه الوظيفة ستظل ثابتة، فسوف نكون قادرين على كتابة برنامج يصف التعليمات المطلوبة لإنجاز هذا المهمة بطريقة دقيقة ومفصلة، وما إلى ذلك، ما نحتاجه هو كتابة برنامج يقوم بالخطوات التالية:
اضبط إعدادات وحدة التحكم الدقيقة وقم بتأهيل مسجلات محطة ADC لتتمكن من استقبال الإشارة من مستشعر درجة الحرارة وتحويلها إلى قيمة رقمية يمكن طباعتها على الشاشة.
اضبط عروات Pins لتوصيل وحدة التحكم بشاشة LCD.
إعداد إجرائي يقرأ قيمة جهاز استشعار الحرارة خلال فترة زمنية محددة، مثل قراءة قيمة جهاز الاستشعار كل ثانية.
حدد إجراءً لمعالجة القيم الشاذة، أي إذا تمت قراءة قيمة خارج النطاق الطبيعي لدرجات الحرارة المسموح بها، بالإضافة إلى تحديد إجراء إعادة التشغيل الذي يسمح للمستخدم بالتدخل في أي وقت لإعادة تشغيل البرنامج. بالنسبة للمهمة السابقة، يمكن استخدام البرمجة الإجرائية كمنطق لكتابة البرنامج النصي، طالما أن وظيفة البرنامج ستظل ثابتة طوال فترة الاستخدام وطالما لم يكن هناك ارتباط بين البيانات والبيانات التي تتم معالجتها باستخدام البيانات والبيانات الأخرى.
بالطبع، يمكن استخدام نماذج برمجة أخرى لإنجاز المهمة السابقة، ولكن نظرًا للتشابه بين فلسفة البرمجة الإجرائية والطريقة التي ينفذ بها المتحكم الدقيق الكود، فإن استخدام البرمجة الإجرائية سيكون خيارًا منطقيًا في مثل هذه الحالة.
بقلم آية محمود محمد
هل اعجبك الموضوع :

تعليقات