برمجه اتماتيه
Automatic programming -

البرمجة الأُتماتية

باسل الخطيب

البرمجة التوليدية generative programming

توليد الرماز المصدر source-code generation

أدوات التوليد الآلي

تطبيقات البرمجة الأُتماتية

 

تُعرّف البرمجة الأُتماتية automatic programming بأنها عملية توليد البرامج الحاسوبية والقابلة للتنفيذ انطلاقاً من توصيف specification مسألة ما. ويسمح ذلك للمبرمجين بكتابة برامجهم بمستوى عالٍ من التجريد abstraction من دون الدخول في التفاصيل البرمجية الدقيقة.

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

البرمجة التوليدية generative programming:

تُعدّ البرمجة التوليدية أحد أنماط البرمجة الحاسوبية التي تقوم بالتوليد الآلي للرماز، وذلك باستخدام مجموعة من المفاهيم والأدوات البرمجية. وتهدف إلى رفع إنتاجية المبرمج باستخدامه مجموعة من الأدوات التي تُساعده أساساً على تنظيم الرماز الذي يقوم بكتابته، وإمكانية إعادة استخدام أجزاء منه عند معالجته مسائل أخرى. يُعرف حالياً هذا المنحى في هندسة البرمجيات باسم هندسة البرمجيات المبنية على المكوّنات component-based software engineering.

ومن أهم المفاهيم والأدوات البرمجية التي تُستخدم في ذلك:

1- الأطر العامة generic frames:

يتكون الإطار من مركّبة component تستخدم لغة حيادية neutral language, وهي قابلة للتكيّف adaptable ولإعادة الاستخدام. يسمح استخدام الأطر بتوليد البرمجيات بزمن وكلفة وأخطاء أقل.

2- الصفوف classes:

يسمح الصف بتعريف قالب يُحدّد الخصائص والعمليات المشتركة لمجموعة الأغراض (المنتسخات) instances التي يُمكن إنشاؤها انطلاقاً من الصف.

يسمح استخدام الصفوف أساساً بعملية تنظيم الرماز بفضل فصل مكونات المسألة في صفوف متعددة، وهذا مفيد في عمليات التعديل وإعادة الاستخدام لاحقاً.

3- النماذج prototypes:

لا توجد صفوف في هذه المنهجية، وإنما يجري تحقيق إعادة الاستخدام باستنساخ cloning الأغراض المعرّفة سلفاً، والتي تُستخدم نماذجَ لأغراض جديدة أخرى.

4- القوالب templates:

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

5- المظاهر aspects:

تعتمد منهجية تطوير البرمجيات المظهرية التوجهaspect-oriented software development على عزل الوظائف الثانوية أو الداعمة للبرمجية عن وظيفتها الأساسية.

توليد الرماز المصدر source-code generation:

وهي عملية توليد الرماز المصدري اعتماداً على نموذج أنتولوجي ontological model، مثل القوالب مترافقاً مع أداة برمجية مثل معالج قوالب أو بيئة تطوير متكاملة integrated development environment.

يسمح استخدام هذه الأدوات بالتوليد الآلي للرماز بطرق مختلفة، ومن الأمثلة البسيطة على ذلك استخدام التعليمات الجهرية (الماكرو) macro في المعالج السَّبْقي للغة البرمجة C C-preprocessor، إذ يسمح الماكرو للمبرمج بتعريف نماذج محدَّدة يمكن الاستعاضة عنها آلياً برماز معين.

أدوات التوليد الآلي:

يتوفر الكثير من بيئات التطوير المتكاملة التي تقدِّم أدوات عديدة للتوليد الآلي للرماز، مثل البيئة المطوّرة من شركة ميكروسوفت Microsoft visual studio التي تسمح للمبرمج باختيار قصاصات snippet من الرماز المصدري وتخصيصها. كما توفّر مجموعة من المعالجات المساعدة wizard التي تسمح للمبرمج بتطوير الواجهات البيانية للتطبيق تفاعلياً، ويقوم المترجم بعدها بتوليد كل الرماز اللازم لهذه الواجهات.

تطبيقات البرمجة الأُتماتية:

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

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

مراجع للاستزادة:

- R. Chiong, Intelligent Systems for Automated Learning and Adaptation: Emerging Trends and Applications, Idea Group (IGI), 2010.

- R. A. Mur, Automatic Inductive Programming, ICML 2006 Tutorial, 2006.

- R. Riolo, E. Vladislavleva, J. H. Moore, Genetic Programming Theory and Practice IX, Springer, 2011.


- التصنيف : كهرباء وحاسوب - النوع : كهرباء وحاسوب - المجلد : المجلد الرابع مشاركة :

بحث ضمن الموسوعة

من نحن ؟

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