التحسين (الحوسبة)

التحسين هو مصطلح عام في علوم الحاسوب يشمل مناهج مختلفة لإنتاج برامج حاسوبية صحيحة وتبسيط البرامج الحالية لتمكين التحقق الرسمي منها.

تحسين البرنامج

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

يُطلق على عملية إعداد قائمة متطلبات المنتج (قائمة المتطلبات) بشكل تدريجي وفي الوقت المناسب في مناهج تطوير البرمجيات الرشيقة ، مثل سكروم ، اسم التحسين أيضاً. [ 1 ]

تحسين البيانات

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

على سبيل المثال، يمكن تحسين x ∈ {1,2,3} (حيث x هي قيمة المتغير x بعد إجراء عملية حسابية) إلى x ∈ {1,2}، ثم x ∈ {1}، وتنفيذها كالتالي : x  := 1. كما أن تنفيذ x  := 2 و x  := 3 سيكون مقبولاً بنفس القدر في هذه الحالة، باستخدام مسار مختلف للتحسين. مع ذلك، يجب توخي الحذر من التحسين إلى x ∈ {} (وهو ما يعادل خطأً ) لأن هذا غير قابل للتنفيذ؛ إذ يستحيل اختيار عنصر من المجموعة الفارغة .

يُستخدم مصطلح التجسيد أحيانًا (وقد صاغه كليف جونز ). يُعدّ التقليص أسلوبًا بديلًا عندما يتعذر التحسين الرسمي. ونقيض التحسين هو التجريد .

حساب التفاضل والتكامل الدقيق

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

أنواع التحسين

في نظرية الأنواع ، يُعرف نوع التحسين [ 2 ] [ 3 ] [ 4 ] بأنه نوع مزود بشرط يُفترض تحققه لأي عنصر من عناصر النوع المُحسَّن. يمكن لأنواع التحسين التعبير عن الشروط المسبقة عند استخدامها كوسائط للدوال، أو الشروط اللاحقة عند استخدامها كأنواع مُعادة : على سبيل المثال، يمكن كتابة نوع دالة تقبل أعدادًا طبيعية وتُعيد أعدادًا طبيعية أكبر من 5 على النحو التالي:و:شمال{ن:شمال|ن>5}{\displaystyle f:\mathbb {N} \rightarrow \{n:\mathbb {N} \,|\,n>5\}}وبالتالي، ترتبط أنواع التحسين بالتصنيف الفرعي السلوكي .

انظر أيضاً

مراجع

  1. تشو، ل. (2009). "تبني ثقافة أجايل: رحلة فريق تجربة المستخدم". مؤتمر أجايل 2009. ص 416-421 . doi : 10.1109/AGILE.2009.76 . ISBN  978-0-7695-3768-9. S2CID 38580329 . 
  2. فريمان، ت.؛ بفينينغ، ف. (1991). "أنواع التحسين للغة ML" (ملف PDF) . وقائع مؤتمر ACM حول تصميم وتنفيذ لغات البرمجة . الصفحات 268-277 . doi : 10.1145/113445.113468 . 
  3. هاياشي، س. (1993). "منطق أنواع التحسين". وقائع ورشة العمل حول أنواع البراهين والبرامج . ص 157-172 . CiteSeerX 10.1.1.38.6346 . doi : 10.1007/3-540-58085-9_74 .  
  4. ديني، إي. (1998). "أنواع التحسين للمواصفات". وقائع المؤتمر الدولي للاتحاد الدولي لمعالجة المعلومات حول مفاهيم وأساليب البرمجة . المجلد 125. تشابمان وهول. الصفحات 148-166 . CiteSeerX 10.1.1.22.4988 .