• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

البحث في المنتدى

Showing results for tags 'فصل الجوانب'.

  • البحث بالتاقات

    اكتب الكلمات المفتاحيه بينها علامه الفاصله
  • البحث بكاتب الموضوع

تم إيجاد 1 نتيجة

  1. السلام عليكم ورحمة الله   أود ان امر على موضوع مفيد جدا في عالم البرمجة عموما ثم توضيح تطبيقاته من خلال لغة سي شارب والذي يتطلب معرفة واتقال للبرمجة الكائنية أو غرضية التوجه OOP   ما هو فصل الجوانت Separation of concerns ؟   كما هو معلوم فإن البرمجية الكائنية أو غرضية التوجه طرحت مصطلح الكائن object والصنف class من أجل تنظيم الكود البرمجي ضمن هذه الأصناف بحيث يتحمل كل كلاس مسؤولية محددة من البرنامج ككل مثلا كلاس ادارة الحساب المصرفي , يتبادر إلى الذهن ان مثل هكذا كلاس سيحوي توابع متعلقة بالحساب المصرفي مثل سحب الرصيد والإيداع والتحويل على الشكل المبسط:   class BankAccount {       int Balance;              bool Withdraw(int amount)       {             if(Balance >= amount) { Balance -= amount; return true;} else return false;       }   }   المشكلة في تصميم الكلاسات في OOP أنها لا تحوي حل للجوانب المتشابكة cross cutting concerns أي بمعنى آخر هناك منطق في البرنامج يفرض نفسه في أكثر من مكان على سبيل المثال تابع التحقق من هوية المستخدم الحالي وعليه فإننا في التصميم السابق سنضيف استعاء لتابع تحقق من المستخدم الحالي قبل منطق التابع نفسه في كل من سحب الرصيد والايداع والتحويل وحتى في جوانب أخرى مثل تعديل المعلومات الشخصية للمستخدم.     class BankAccount {       int Balance;              bool Withdraw(int amount)       {            if( ! ValidUser() ) throw new Exception("Not valid user");               if(Balance >= amount) { Balance -= amount; return true;} else return false;       }   }   وكمثال آخر تابع مثل التحقق من الاتصال قبل البداية بالإجراء ضمن كل تابع فيه اتصال سيجعل التحقق من الاتصال موجود في كلاسات لا تعنى بهذا الجانب ومن هنا جاءت فكرة البرمجة الموجه إلى فصل الجوانب AOP والتي تعرف مصطلحات جديدة للعالم البرمجة.