اهتمام شامل
في تطوير البرمجيات الموجهة نحو الجوانب ، تُعرَّف الاهتمامات المتداخلة بأنها جوانب من البرنامج تؤثر على عدة وحدات ، دون إمكانية تضمينها في أي منها. غالبًا ما يتعذر فصل هذه الاهتمامات بشكل كامل عن بقية النظام في كلٍّ من التصميم والتنفيذ، وقد ينتج عنها تشتت ( تكرار الكود )، أو تشابك (اعتمادات كبيرة بين الأنظمة)، أو كليهما.
على سبيل المثال، إذا كنت تكتب تطبيقًا للتعامل مع السجلات الطبية ، فإن فهرسة هذه السجلات تعتبر مصدر قلق أساسي ، في حين أن تسجيل تاريخ التغييرات في قاعدة بيانات السجلات أو قاعدة بيانات المستخدم، أو نظام المصادقة، سيكون من المخاوف الشاملة لأنها تتفاعل مع أجزاء أخرى من البرنامج.
خلفية
الاهتمامات المتداخلة هي أجزاء من البرنامج تعتمد على أجزاء أخرى كثيرة من النظام أو يجب أن تؤثر عليها. وهي تشكل الأساس لتطوير الجوانب . [ 1 ] لا تتناسب هذه الاهتمامات المتداخلة تمامًا مع البرمجة الكائنية أو البرمجة الإجرائية . [ 2 ]
قد تكون الاهتمامات المتداخلة مسؤولة بشكل مباشر عن التشابك ، أو الترابطات بين مكونات النظام، داخل البرنامج . ولأن بنى لغات البرمجة الإجرائية والوظيفية تتكون بالكامل من استدعاء الإجراءات، فلا يوجد أساس دلالي يسمح بمعالجة هدفين في آن واحد (القدرة المراد تنفيذها والاهتمام المتداخل ذي الصلة). [ 3 ] ونتيجة لذلك، يجب أن يكون الكود الذي يعالج الاهتمام المتداخل متناثرًا ، أو مكررًا، عبر المواقع المختلفة ذات الصلة، مما يؤدي إلى فقدان نمطية البرنامج . [ 2 ]
يهدف البرمجة الموجهة نحو الجوانب إلى تغليف الاهتمامات المشتركة في جوانب للحفاظ على نمطية التصميم. وهذا يسمح بعزل الكود وإعادة استخدامه بشكل واضح لمعالجة الاهتمامات المشتركة. [ 4 ] من خلال بناء التصميمات على الاهتمامات المشتركة، يمكن أن تشمل فوائد هندسة البرمجيات نمطية التصميم وتبسيط الصيانة. [ 5 ]
أمثلة
ومن أمثلة المخاوف التي تميل إلى أن تكون شاملة ما يلي:
- قواعد العمل
- التخزين المؤقت
- إمكانية نقل التعليمات البرمجية
- التحقق من صحة البيانات
- تحسينات خاصة بالمجال
- متغيرات البيئة وإعدادات التكوين العامة الأخرى
- اكتشاف الأخطاء وتصحيحها
- التدويل والتوطين، والذي يشمل توطين اللغة
- أمن المعلومات
- قطع الأشجار
- إدارة الذاكرة
- يراقب
- المثابرة
- ميزات المنتج
- قيود الوقت الحقيقي
- التزامن
- معالجة المعاملات
- مساعدة حساسة للسياق
- خصوصية
- أمن الحاسوب
انظر أيضاً
- فصل الاهتمامات
- البرمجة الموجهة نحو الجوانب
- إعادة هيكلة الكود (إعادة تنظيم البرمجيات)
- توحيد قواعد البيانات (تقليل البيانات المكررة بلا داعٍ)
- الوراثة المتعددة
- الخدمات المصغرة
- التعامد (التطبيع الرياضي)
مراجع
- ^ كيكزاليس وآخرون. 2002 ، ص. 4
- 1 2 كيكزاليس وآخرون. 1997 ، ص. 1
- ^ كيكزاليس وآخرون. 1997 ، ص. 6
- ^ كيكزاليس وآخرون. 1997 ، ص. 2
- ^ لي وكريشنامورثي وفيسلر 2002 ، ص. 1
فهرس
- كيتزاليس، غريغور؛ لامبينغ، جون؛ مينديكار، أنوراغ؛ مايدا، جون؛ لوبيز، كريستينا؛ لونغتير، جان مارك؛ إيروين (1997). "البرمجة الموجهة نحو الجوانب". وقائع المؤتمر الأوروبي الحادي عشر حول البرمجة الموجهة نحو الكائنات (ECOOP 1997) : 220-242 .
- براءة الاختراع الأمريكية رقم 6467086 ، كيتشاليس وآخرون، " البرمجة الموجهة نحو الجوانب "، صدرت في 15 أكتوبر 2002
- لي، هاري؛ كريشنامورثي، شري رام؛ فيسلر، كاثي (2002). "التحقق من الميزات الشاملة كنظم مفتوحة". ملاحظات هندسة البرمجيات ACM SIGSOFT . 27 (6): 89-98 . CiteSeerX 10.1.1.8.9445 . doi : 10.1145/605466.605481 . S2CID 52835673 .
- بارناس، ديفيد ل. (ديسمبر 1972). "حول المعايير المستخدمة في تقسيم الأنظمة إلى وحدات". اتصالات رابطة مكائن الحوسبة . 15 (12): 1053-1058 . CiteSeerX 10.1.1.90.8963 . doi : 10.1145/361598.361623 . S2CID 53856438 .
- تار، بيري؛ أوشر، هارولد؛ هاريسون، ويليام؛ ساتون، ستانلي إم. الابن (1999). "درجات متعددة من الفصل: الفصل متعدد الأبعاد للاهتمامات". وقائع المؤتمر الدولي لهندسة البرمجيات لعام 1999 (رقم تصنيف IEEE: 99CB37002) . لوس أنجلوس، كاليفورنيا، الولايات المتحدة الأمريكية: مطبعة جمعية IEEE للحاسبات . الصفحات 107-119 . CiteSeerX 10.1.1.89.1641 . doi : 10.1109/ICSE.1999.841000 . ISBN 978-1-58113-074-4.
للمزيد من القراءة
- لاداد، ر. (2003): AspectJ في العمل، البرمجة العملية الموجهة نحو الجوانب، منشورات مانينغ.
روابط خارجية
- قاموس المصطلحات الموجهة نحو الجوانب الخاص بموقع AOSD.net (عبر أرشيف الإنترنت Wayback Machine ؛ أصبح موقع AOSD.net الآن Modularity ).
- AspectJ، امتداد موجه نحو الجوانب للغة البرمجة جافا
- بيرغمانز، ل.، م. أكسيت (2001): تجميع الاهتمامات المتعددة باستخدام مرشحات التركيب، https://web.archive.org/web/20170909131212/http://trese.cs.utwente.nl/ (24 يوليو 2004)
- بيرغ، ك. فان دن، كونخيرو، ج.، وتشيتشيان، ر. (2005). أنطولوجيا AOSD 1.0 - أنطولوجيا عامة لتوجه الجوانب. شبكة التميز الأوروبية AOSD، http://eprints.eemcs.utwente.nl/10220/01/BergConChi2005.pdf
- إليك مثال على كيفية التعامل مع مشكلة شاملة: https://web.archive.org/web/20161220151503/https://www.captechconsulting.com/blogs/a-persistence-pattern-using-threadlocal-and-ejb-interceptors
- تطوير البرمجيات الموجهة نحو الجوانب
- البرمجة الموجهة نحو الجوانب
