سؤال

ما هي التماسك والفصل؟ لقد وجدت معلومات حول الاقتران ولكن ليس حول الفصل.

هل كانت مفيدة؟

المحلول

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

تعديل :

لقد جئت إلى هذا في هذا الكتاب الرائع المسمى برنامج موجه نحو الكائنات النامية إرشاد الاختبارات:

الاقتران:

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

تماسك:

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

نصائح أخرى

التماسك - يتعلق بالمبدأ القائل بأن الطبقة/الطريقة يجب أن تكون مسؤولة عن شيء واحد فقط ، أي أنه لا توجد طرق طائشة لا تنتمي إلى التغليف ؛ طريقة تفعل شيء واحد فقط. التماسك العالي/المنخفض هو الدرجة التي يحملها هذا.

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

الأنظمة المرنة لها تماسك عالي وقرطية فضفاضة.

للاقتران ، هذا المقال ويكيبيديا يجب الإجابة على جميع أسئلتك. هذه المقالة يتعامل مع التماسك.

"فك الارتباط" هو مجرد اسم آخر "اقتران صغير/منخفض".

لذلك هذه المصطلحات تجيب على هذه الأسئلة:

  • كم يعتمد كل جزء من مشروعك على جزء آخر؟
  • إذا كنت ترغب في استخدام جزء من مشروعك فقط (مثل حل مشكلة محددة) ، فكم ما تحتاج إلى معرفته عن بقية المشروع؟
  • هل يركز كل جزء من مشروعك على حل واحد لمشكلة محددة أو هل "تسرب" الحلول لأجزاء أخرى؟

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

اقتران منخفض يساعدنا على الوصول إلى التماسك العالي! تذكر أننا نريد أن تحتوي الوحدة النمطية على مهام ذات صلة ومسؤولية واحدة. لكن ما هو الاقتران؟ الاقتران هو درجة التبعية على الوحدات الأخرى لتحقيق مسؤوليتنا الفردية عن تلك الوحدة. لذلك من خلال الاقتران المنخفض ، نقول أننا لا نعتمد اعتمادًا كبيرًا على الوحدات الخارجية وبالتالي لدينا تماسك عالٍ.

ومع ذلك ، إذا كان لدينا العديد من التبعيات على الوحدات الخارجية ، فسيكون لدينا اقتران عالي والتماسك المنخفض. احصل عليه؟

يقول المفكرون والمجموعات الأكثر تزيينًا الأخرى:

التماسك هو الدرجة التي ترتبط بها المهام التي تؤديها وحدة واحدة بشكل وظيفي. "IEEE ، 1983" تماسك هو "الغراء" الذي يحمل وحدة نمطية معًا. يمكن اعتباره نوع الارتباط بين عناصر مكون من الوحدة النمطية. بشكل عام ، يريد المرء أعلى مستوى من التماسك ممكن. "Bergland ، 1981

يقال إن مكون البرمجيات يظهر درجة عالية من التماسك إذا كانت العناصر في تلك الوحدة تظهر درجة عالية من العلاقة الوظيفية. هذا يعني أن كل عنصر في وحدة البرنامج يجب أن يكون ضروريًا لتلك الوحدة لتحقيق الغرض منها. سومرفيل ، 1989

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top