برمجة تركيبية: الفرق بين النسختين

[نسخة منشورة][نسخة منشورة]
تم حذف المحتوى تمت إضافة المحتوى
ط تنسيق ويكي
JarBot (نقاش | مساهمات)
ط بوت:تعريب علامات التنصيص اللاتينية (تجريبي)
سطر 13:
== الجوانب الرئيسية ==
في البرمجة التركيبية، يتم فصل الشواغل بحيث لا تعتمد أية وحدات (أو بعضها) على وحدات أخرى في النظام]محل شك – ناقش[. والهدف من ذلك هو تقليل الاعتماد قدر الإمكان ]محل شك – ناقش[.
وعند إنشاء نظام تركيبي بدلاً من إنشاء تطبيق أحادي (حيث يكون الكل هو أصغر مكون)، يتم بناء عدة وحدات أصغر (يتم تجميعها في العادة) بشكل منفصل بحيث تقوم ببناء[[ترجمة في الوقت المناسب]] وهو برنامج تطبيق قابل للتنفيذ حينما تُترجم هذه الوحدات معًا. وقد يساهم المُترجم في الوقت المناسب في جانب من هذا البناء "«بحركة دؤوبة"» في وقت التشغيل.
وهذا من شأنه جعل النظم التركيبية المصممة، إذا تم إنشاؤها بشكل صحيح، قابلة لإعادة الاستخدام أكثر بكثير من التصميم الأحادي التقليدي، نظرًا لأن كل (أو كثير من) هذه الوحدات يمكن إعادة استخدامها حينئذٍ (بدون تغيير) في مشاريع أخرى. كما ييسر ذلك من "«تحليل"» المشاريع (من خلال مبدأ "«فرق تسد"») إلى عدة مشاريع أصغر. ونظريًا، سيتم تجميع مشروع برامج تركيبية بشكل أسهل بواسطة فِرق كبيرة، حيث لا يقوم أي أعضاء فريق بإنشاء النظام بالكامل، أو لا يضطرون لمعرفة النظام ككل، وإنما يمكنهم التركيز فحسب على المهمة الأصغر المسندة إليهم (يُقال أن هذا يواجه الافتراض الأساسي لمقالات The Mythical Man Month (أشهر رجل أسطوري) – الذي يجعل من الممكن حقًا إضافة مطورين إلى مشروع برامج أخير – دون تأخيره إلى وقت لاحق).
== التطبيق ==
في الآونة الأخيرة، تفوق تمرير الرسائل على واجهات "«الاتصال"» السابقة الأكثر تقليدية<code>Call</code> ليصبح الرابط الأكثر هيمنة بين الوحدات المنفصلة وذلك في محاولة لحل "«مشكلة الإصدارات"» (التي تحدث أحيانًا عند استخدام الوجهات للاتصال بين الوحدات).
== الخلفية التاريخية ==
تم استخدام لغات البرمجة التقليدية لدعم البرمجة التركيبية - منذ عقد الستينيات على أقل تقدير. ويعتبر مفهوم البرمجة التركيبية مفهومًا فضفاضًا ليس له تعريف رسمي؛ وهو، في جوهره، مجرد تقنية برمجية ]محل شك – ناقش[. وحيثما تنتهي البرمجة التركيبية بالضبط وتبدأ[[مكتبة الربط الديناميكي]] و[[برمجة كائنية التوجه]]، تكون في هذا السياق ذاتية. كما يمكن تعريفها بأنه السلف الطبيعي للبرمجة كائنيه التوجه، أو أنها، وفقًا لوجهة نظر، خطوة تطورية متقدمة عنها.