اهتمام شامل

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

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

خلفية

الاهتمامات المتداخلة هي أجزاء من البرنامج تعتمد على أجزاء أخرى كثيرة من النظام أو يجب أن تؤثر عليها. وهي تشكل الأساس لتطوير الجوانب . [ 1 ] لا تتناسب هذه الاهتمامات المتداخلة تمامًا مع البرمجة الكائنية أو البرمجة الإجرائية . [ 2 ]

قد تكون الاهتمامات المتداخلة مسؤولة بشكل مباشر عن التشابك ، أو الترابطات بين مكونات النظام، داخل البرنامج . ولأن بنى لغات البرمجة الإجرائية والوظيفية تتكون بالكامل من استدعاء الإجراءات، فلا يوجد أساس دلالي يسمح بمعالجة هدفين في آن واحد (القدرة المراد تنفيذها والاهتمام المتداخل ذي الصلة). [ 3 ] ونتيجة لذلك، يجب أن يكون الكود الذي يعالج الاهتمام المتداخل متناثرًا ، أو مكررًا، عبر المواقع المختلفة ذات الصلة، مما يؤدي إلى فقدان نمطية البرنامج . [ 2 ]

يهدف البرمجة الموجهة نحو الجوانب إلى تغليف الاهتمامات المشتركة في جوانب للحفاظ على نمطية التصميم. وهذا يسمح بعزل الكود وإعادة استخدامه بشكل واضح لمعالجة الاهتمامات المشتركة. [ 4 ] من خلال بناء التصميمات على الاهتمامات المشتركة، يمكن أن تشمل فوائد هندسة البرمجيات نمطية التصميم وتبسيط الصيانة. [ 5 ]

أمثلة

ومن أمثلة المخاوف التي تميل إلى أن تكون شاملة ما يلي:

انظر أيضاً

مراجع

فهرس

للمزيد من القراءة

  • لاداد، ر. (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