از این دو کلمه معمولا در بررسی کیفی یک تحلیل شیئ گرا سخن به میان می آید. ما در این نوشتار واژه ی جفتانگی و همبستگی را معادل کلمات coupling وcohesion قرار داده ایم.

 از این منظر یک تحلیل شیئ گرا را هنگامی با کیفیت می دانیم که حداقل جفتانگی و حد اکثر همبستگی را داشته باشد. به نحوی که اکثر اصول و الگو های تحلیل شیئ گرا بر این اساس بنیان گذاشته شده اند یعنی:" حداقل جفتانگی و حد اکثر همبستگی ". نسبت دادن این دو خصوصیت به تحلیل های مختلف به صورت نسبی است و به صورت مطلق بیان نمی شود.

به بیان دیگر این دو خصوصیت یک طیف از شدت های مختلف را تولید می کنند که هر طراحی می تواند در نقطه ی خاصی از آن قرار گیرد.

در حالی که هدف نهایی در هر طراحی به هر روشی رسیدن به موارد زیر است:

توسعه ی ساده تر

نگهداری ساده تر

اضافه کردن خصوصیت های جدید به نحو ساده تر

شکنندگی کم تر در برنامه


جفتانگی:


جفتانگی در حقیقت میزان آگاهی اشیاء از یکدیگر است. اگر راه ارتباط دو شیء A و B تنها API های بین این دو شیئ باشد طبیعی است که هیچ آگاهی ای از یکدیگر نداشته و در حداقل جفتانگی نسبت به یکدیگر به سر می بر ند. می توان جفتانگی را متضاد سربستگی (encapsulation) دانست.

همبستگی


در هنگام وضع یک کلاس در طراحی هرچه طراح هدف خاص تر و مشخص تری را برای کلاس مد نظر قرار دهد آن تحلیل و طراحی همبسته تر است. وجود این خصوصیت در طراحی باعث می شود که تغییر در یک بخش خاص و یا اشکال در یک بخش خاص به بخش های دیگر سرایت نکند. در یک جمله ی کوتاه می توان همبستگی را این گونه توصیف کرد"یک کلاس – یک کار" و یا "یک کلاس-یک هدف". هم چنین بالابردن درجه ی همبستگی در طراحی باعث بالا رفتن قابلیت باز بهره وری(reuse) کد ها می شود.

با بهره گیری از+
مطالعه بیشتر +