Birləşmə və Koheziya Arasındakı Fərq

Birləşmə və Koheziya Arasındakı Fərq
Birləşmə və Koheziya Arasındakı Fərq

Video: Birləşmə və Koheziya Arasındakı Fərq

Video: Birləşmə və Koheziya Arasındakı Fərq
Video: Maqnit Sahəsi. Maqnit induksiyası. Amper qüvvəsi 2024, Noyabr
Anonim

Birləşmə vs Koheziya

Birləşmə və birləşmə Java-da (və bütün digər obyekt yönümlü dillərdə) tapılan iki anlayışdır. Birləşmə proqram modullarının hər birinin digər proqram modullarından nə dərəcədə asılı olduğunu ölçür. Uyğunluq hər bir funksiyanın modul daxilində nə qədər güclü əlaqəli olduğunu ölçür. Əslində, hər hansı bir obyekt yönümlü dilin (Java daxil olmaqla) iki əsas məqsədi var, ən səmərəli proqramları inkişaf etdirmək üçün eyni zamanda birləşməni artırmaq və birləşməni az altmaq. Bu iki proqram mühəndisliyi ölçüləri proqram təminatının dəyişdirilməsi və saxlanması xərclərini az altmaq üçün Larry Constantine tərəfindən hazırlanmışdır.

Koheziya nədir?

Uyğunluq hər bir funksiyanın proqram modulu daxilində nə qədər güclü əlaqəli olduğunu ölçür. Yaxşı qurulmuş siniflər yüksək birləşmiş proqramlara səbəb olur. Müəyyən bir sinif çox əlaqəli funksiyalar toplusunu yerinə yetirirsə, bu sinfin birləşmiş olduğu deyilir. Digər tərəfdən, əgər bir sinif bir-biri ilə tamamilə əlaqəli olmayan funksiyaları yerinə yetirirsə, bu o deməkdir ki, sinif ümumiyyətlə birləşmir. Anlamaq lazımdır ki, vahidliyin olmaması ümumi tətbiqin tələb olunan funksionallığa malik olmaması demək deyil. Sadəcə olaraq, birləşmə olmadan funksionallığı idarə etmək çox çətin olacaq, çünki zaman keçdikcə tətbiqin mürəkkəbliyi artdıqca onlar bir çox yanlış yerə səpələnəcəklər. Kodun hər tərəfinə səpələnmiş davranışların saxlanılması, dəyişdirilməsi və genişləndirilməsi hətta ən təcrübəli proqramçılar üçün də çox yorucudur.

Birləşmə nədir?

Birləşmə proqram modullarının hər birinin digər proqram modullarından nə dərəcədə asılı olduğunu ölçür. İki cisim arasında qarşılıqlı əlaqə birləşmə olduğu üçün baş verir. Sərbəst əlaqəli proqramlar yüksək çeviklik və genişlənmə qabiliyyətinə malikdir. Güclü birləşmə heç vaxt yaxşı deyil, çünki bir obyekt digər obyektdən çox asılı ola bilər. Kod dəyişdirildikdə bu kabusdur, çünki yüksək birləşmə o deməkdir ki, proqramçılar hətta bir davranış modifikasiyası üçün bir neçə kod yerində işləməli olacaqlar. Güclü birləşmə həmişə aşağı çevikliyə və daha az genişlənməyə/genişlənmə qabiliyyətinə malik proqramlara gətirib çıxarır. Bununla belə, Java kimi proqramlaşdırma dillərində birləşmədən tamamilə qaçmaq mümkün deyil. Lakin proqramçılara birləşməni mümkün qədər az altmaq üçün əllərindən gələni etmələri tövsiyə olunur. Obyektlərin ölçüsünə və çevikliyinə mane olmadan bir-biri ilə qarşılıqlı əlaqədə olmasına kömək etmək üçün bəzi birləşmələr də mümkündür.

Birləşmə və Koheziya arasındakı fərq nədir?

Birləşmə və birləşmə proqram mühəndisliyində modulun keyfiyyəti ilə əlaqəli olsa da, onlar tamamilə fərqli anlayışlardır. Cohesion modul daxilində funksionallığın bir-biri ilə nə qədər əlaqəli olmasından danışır, birləşmə isə bir modulun bütün proqram daxilində digər proqram modullarından nə qədər asılı olması ilə məşğul olur. Ən keyfiyyətli proqram təminatına sahib olmaq üçün birləşmə və birləşmə spektrlərinin iki əks ucuna çatmalıdır. Başqa sözlə, boş birləşmə və güclü birləşmə ən yaxşı proqramı təmin edir. Şəxsi sahələrə, ictimai olmayan siniflərə və özəl metodlara malik olmaq sərbəst birləşməni təmin edir, eyni zamanda bütün üzvləri sinif daxilində görünən edir və paketin defolt görünməsi yüksək uyğunluq təmin edir.

Tövsiyə: