Komposisyon aron sa pagluwas sa mga kabilin

Unsa nga paagi sa pagbuhat niini

Ang konsepto sa panulondon mao ang usa ka konsepto nga ang usa ka kinahanglan gayud nga sa agalon kon ang usa ka tawo nga gigamit sa usa ka pinulongan nga butang

Kon gusto sa pag-organisar sa imong mga code nga naglibut nga mga butang, nga adunay usa ka lig-on nga posibilidad nga kamo mahimong nag-atubang sa panginahanglan sa paggamit sa kabilin.

Bisan tuod nga ang kabilin nga nagdala sa usa ka daghan sa mga dili-malalis nga bentaha, kini dili mao ang tubag sa tanang problema.

Kon kamo mahulog ngadto sa mga pagpatuyang sa paggamit sa kabilin, adunay usa ka hataas nga higayon nga kamo mordiez mga tudlo sa usa ka pipila ka mga bulan ang milabay sa diha nga ikaw kinahanglan nga evolve sa mga operatiba kasangkaran sa imong aplikasyon. Siyempre kini mao ang aron sa pagsulay sa pag-ingon,"Kon ako maka-angkon gikan sa Foo, nan ako aduna sa tanan nga iyang mga bahin nga walay bisan unsa nga mga paningkamot.". Apan sa samang panahon, nga kamo mobugkos sa ka kusog sa duha sa imong mga klase ug kon sila moabut ngadto sa diverge sa umaabot ikaw dili makahimo sa nga kamo lang moingon nga"Ok, sila pagpakigbahin sa mao usab nga sa diha nga usa ka sa pipila ka mga features".

Ikaw unya magsugod sa pagkaamgo nga kini mao ang karon sa lisud nga pagsulay sa matag usa niini nga mga klase, ug nga kini mao ang sa halayo gikan sa dayag ngadto sa mga tipak. Ang kabalaka alang sa mga developers dili sinati nga ang usa ka wala makaamgo niini kamatuoran nga sa tunga-tunga sa usa ka proyekto o sa diha nga ang mga kliyente nga gusto sa paghimo sa usa ka kausaban sa operasyon sa usa ka kasamtangan nga elemento.

Kamo motuo kanako sa pulong, sa kanunay sa mga lumulupyo pinaagi sa pagkuha sa.

Mao kini ang gikinahanglan aron nga makahimo sa pag-ila sa lain-laing mga matang sa mga relasyon nga mahimong anaa sa taliwala sa mga klase. Sa usa ka klase nga mahimong nalambigit sa usag usa pinaagi sa tulo ka mga matang sa mga relasyon: Mga komposisyon sa kanunay nga mas flexible kay sa usa ka mixins ug dili direkta nga may kalabutan ngadto sa klase nga ang mga panon lahi sa sa mga nga kabilin. Busa, kini mao karon ang mga sakyanan nga adunay usa ka tibook nga pagsingkamot, sa mga sakyanan nga makahimo sa roll ug mga helicopters molupad.

Karon kita moingon nga ang usa ka tawo buot sa paghimo sa usa ka klase alang sa mga eroplano teknikal mahimo roll ug molupad.

Ang atong mga eroplano mao ang tunga-tunga sa taliwala sa mga sakyanan ug mga helikopter. Siyempre, nga kita mahimo nga mogamit sa mixins, apan kini mao ang dili labaw o minus kay sa usa ka matang sa multiple kabilin.

Karon, kita sa paghisgot mahitungod sa software arkitektura

Kini nga mas maayo kay sa atong mga kasamtangan nga solusyon ug sa pagsulbad sa atong mga problema. Ang laing paagi mao ang sa paggamit sa mga panakot, nga nagtugot kaninyo sa ihimulag sa batasan sa mga espesyalista sa mga klase.

Kita unya sa paggamit sa higayon sa niini nga mga mga klase sa uban nga mga klase.

Kini busa nagtugot sa mga klase nga limpyo, sa mubo, walay paagi nga kapin sa kinaiya, ug sa kaayo nga dali ra testable. Gamita ang komposisyon, kini mao ang access ngadto sa mga bug-os nga gahum sa usa ka mapahinunguron nga sakop sa pagmaniobra sa usa ka butang. Mao nga kita makahimo sa gibutang niya kini sa dapit: ako mohatag kaninyo nga kini nga solusyon mao ang dugang nga verbose kay mixins apan kini mao usab ang mas flexible ug gamhanan, ug diha sa buhat tingali ang labing sayon nga pagsulay. Alang sa mga pasundayag, ako initialized sa mga butang Ligid ug Pako sa molupad, apan diha sa buhat kini mga kahilig sa paghimo niini nga buhat sa initialization sa initialize pamaagi nga motugot sa nagapadayon nga mga butang ug sa paglikay sa mga problema sa kompetisyon. Sa praktis, walay rason sa pagsunod sa usa ka tukma nga pamaagi, nganong sa paggamit sa mga panakot, mixins, o panulondon sa usa ka bug-os nga matang sa diha nga ikaw mahimo mix sa tulo ka. Siya kinahanglan gayud nga masayud sa unsa nga paagi aron sa pagpahiangay ug sa paggamit sa mga solusyon nga mahimong mas flexible. Kita busa gamita ang kabilin sa dihang gikinahanglan kini, hinumdumi,"sa usa ka developer sa usa ka tawo". Kita mopadayon ngadto sa mixins sa diha nga ang usa mao ang sa sa kahimtang,"sa usa ka developer sa paglihok ingon nga sa usa ka empleyado".

Kini tingali nga sa ngadto sa komposisyon kon kini nga relasyon turns sa aron mahimo nga usa ka butang sa usa ka komplikado nga, usa ka butang nga nagkinahanglan sa usa ka hinalad nga klase.

Sa pag-summarize sa sulod sa niini nga artikulo, hunahunaa ang inyong mga klase sa ingon nga sila mao ang mga labing modular kutob sa mahimo, dili moipon sa imong kaugalingon sa usa ka kahon nga kamo mahimo nga dili sa katapusan sa pag-adto sa gawas, hinumdumi nga tin-aw nga paghulagway sa mga responsibilidad sa matag usa. Kon ang imong mga pagsulay mao ang mga lisud nga sa pag-implementar sa, kini mao ang kanunay ang timaan sa usa ka arkitektura isyu nga kinahanglan nga imong ibutang sa usa ka pulgas diha sa mga igdulungog. sa usa ka app nga Panglantaw. Sisi, kini mao ang posible nga. Ayaw pagpabilin nga mag-inusara.