Skip to main content

Ano ang nag -iisang prinsipyo ng responsibilidad?

Sa computer programming at disenyo, ang nag -iisang prinsipyo ng responsibilidad ay isang konsepto na nagpapakitang -gilas sa pananaw na ang anumang klase sa isang programa ay dapat magsagawa lamang ng isang function sa mas malaking aplikasyon.Ang ideyang ito ay bahagyang nagtataguyod ng ilan sa mga mithiin ng object oriented programming, tulad ng encapsulation, dahil ang isang buong klase ay nakatuon sa pagsasagawa ng isang solong responsibilidad at magkakaroon ng kaunting pag -asa sa mga klase sa labas.Kasabay nito, medyo antithetiko sa ilan sa mga konsepto ng maagang object oriented programming, dahil ang pag -andar ng isang solong bagay ay nabubulok mula sa data na hinahawakan ng bagay, na nangangahulugang maraming mga bagay sa pagsasama ay maaaring itayo upang mapanatiliAng ilang mga gitnang data.Ang nag-iisang prinsipyo ng responsibilidad ay ang batayan para sa isang uri ng modelo ng disenyo na kilala bilang disenyo na hinihimok ng responsibilidad.Ang ilang mga prinsipyo ng disenyo ay makikita ang handset bilang isang solong bagay na humahawak sa parehong pag -input mula sa linya ng telepono at ang paghahatid ng output mula sa nagsasalita.Sa ilalim ng isang solong modelo ng responsibilidad, kung saan ang isang solong bagay ay dapat lamang magkaroon ng isang solong responsibilidad, kung gayon ang handset ay binubuo ng maraming magkahiwalay na mga bagay na bawat isa ay nagsagawa ng isang solong pag -andar, tulad ng pagtanggap lamang ng input mula sa linya ng telepono, o pag -output lamang ng data sa pamamagitan ngAng earpiece.Sa halimbawa ng handset, alinman sa input mula sa linya ng telepono o ang paraan na ang signal ay na -output sa gumagamit ay maaaring mabago nang hindi nakakaapekto sa mga kalapit na klase hangga't sumunod sila sa parehong kontrata para sa pakikipag -ugnay.Bilang karagdagan, ang muling paggamit ng ilang mga sangkap ay maaaring maging napakataas, dahil ang bawat klase ay ganap na nakapaloob at umaasa nang kaunti, kung sa lahat, sa mga nakapalibot na bagay, na nakatuon sa halip na isang responsibilidad nito.Ang isang malaking halaga ng mga klase at mga bagay na lahat ay gumagana sa parehong data.Ito ay maaaring mangahulugan ng isang malaking halaga ng overhead at isang kumplikadong proseso ng disenyo.Maaari rin itong gawing mahirap ang pag-debug ng isang malaking programa, dahil ang isang solong bahagi ng programa ay maaaring binubuo ng libu-libong mga maliliit na file ng klase.Ang data ay pinaghiwalay para sa mga layunin ng disenyo.Habang ito ay humantong sa isang tiyak na kalayaan, encapsulation at modularity sa disenyo, maaari rin itong makabuo ng isang bilang ng mga intermediate na pattern at disenyo na dapat gamitin upang mapadali ang isang bilang ng mga klase na lahat ng pagtatangka upang makipag -ugnay sa data nang sabay -sabay.Sa kabilang banda, kung ang data ng isang bagay at ang mga pamamaraan na ginamit upang manipulahin ang lahat ay magkasama sa isang solong bagay na may pananagutan, kung gayon ang code ay maaaring maging mas mahirap na baguhin bilang scale ng system, baguhin o maging mas kumplikado.