Nga rereketanga nui i waenga i nga Tauira Hoahoa me nga maataapono SOLID
Tauira hoahoa:
Nga Whakataunga Tauwhāiti: Ko nga tauira hoahoa he mea motuhake, he otinga taumata-iti ki nga raruraru ka hoki mai i roto i te hoahoa rorohiko.
Nga Taipitopito Whakatinana: Whakaratohia he aratohu whakatinana raima mo te whakaoti i nga wero whakahoahoa noa.
Tauira: Ko etahi tauira hoahoa rongonui ko te Singleton, Factory Method, me nga tauira Adapter.
Haumaru: Ka whakamatauria nga tauira hoahoa, ka whakaaetia e te hapori, ka noho haumaru ki te whai.
Ngā mātāpono mārō:
Aratohu Whānui: Ko nga maataapono SOLID he aratohu taumata teitei e whakamarama ana i te hoahoa rorohiko pai.
Hangahanga Tauineine: Ka arotahi ratou ki te tauineine, te pupuri, me te panui.
Kaore i herea ki te reo: Ko nga maataapono SOLID kaore e herea ki tetahi reo hotaka motuhake.
Tauira:
Tikanga Haepapa Takitahi (SRP): Kia kotahi noa te take o te karaehe hei whakarereke.
Tikanga Tuwhera/Katia (OCP): Me tuwhera nga hinonga rorohiko mo te toronga engari ka kati mo te whakarereke.
Tikanga Whakakapi Liskov (LSP): Me whakakapi nga momo iti me o raatau momo turanga.
Kaupapa Whakawehe Atanga (ISP): Kaua e kaha nga kaihoko ki te whakawhirinaki ki nga atanga kaore e whakamahia e ratou.
Tikanga Hurihuri Whakawhirinaki (DIP): Ko nga waahanga taumata teitei kia kaua e whakawhirinaki ki nga waahanga taumata-iti; me whakawhirinaki nga mea e rua ki nga tangohanga.
Hei whakarāpopototanga, ka whakaratohia e nga tauira hoahoa etahi otinga motuhake, engari ko nga maataapono SOLID e whakarato ana i nga aratohu whanui mo te hoahoa rorohiko pai ake.
Nga Painga o te Whakamahi Tauira Hoahoa
Te whakamahi ano: Ko nga tauira hoahoa he otinga ka taea te whakamahi ki nga kaupapa maha. Ma te whakamahi i nga tauira kua whakapumautia, ka penapena te wa me te whakapau kaha o nga kaiwhakawhanake, na te mea kaore e hiahia ana ratou ki te whakahou i te wira mo nga raru noa.
Defite ahua o te hoahoanga: Ka awhina nga tauira hoahoa defiwhakamahine i te hoahoanga o te punaha rorohiko. Ka whakaratohia e ratou he huarahi hanganga ki te whakaoti i nga wero hoahoa motuhake, te whakarite kia rite tonu me te pupuri.
Flessibilità: Ka taea e nga tauira te ngawari ki te urutau ki nga hiahia rereke. Ina hiahiatia nga ahuatanga hou, whakarereke ranei, ka taea e nga kaiwhakawhanake te whakarereke, te whakawhānui ranei i nga tauira o naianei me te kore e pakaru te punaha katoa.
Nga kino o te whakamahi i nga Tauira Hoahoa
Anau ako: Ko te mohio me te whakamahi i nga tauira hoahoa me mohio me te wheako. He uaua pea nga kaiwhakawhanake tauhou ki te mohio ki nga ariā me te whiriwhiri i te tauira tika mo tetahi raru.
Te whakamahi nui: Ma te waatea o nga tauira hoahoa ka puta te pohehe ka taea te whakaoti rapanga katoa ma te whakamahi i nga tauira o naianei. Ko te nui o te whakamahi i nga tauira ka taea te whakatiki i te mahi auaha me te aukati i te rapu otinga pai ake, hou ake.
Te matatini- Ko etahi tauira hoahoa ka whakauru i te uauatanga atu ki te turanga waehere. Me kimi e nga Kaihanga he taurite i waenga i te whakamahi tika i nga tauira me te whakamarama i te waehere.
Hei whakarāpopototanga, he nui nga painga o nga tauira hoahoa i runga i te whakamahinga ano, te hoahoanga me te ngawari, engari kia tika te whakamahi kia kore ai e tino uaua me te whakatairanga i te mahi auaha.
Tauira o te Tauira Hoahoa i Laravel: Singleton
Ko te tauira hoahoa a Singleton ka whakarite kia kotahi noa te tauira o te akomanga me te whakarato i tetahi waahi whakaurunga. I roto i a Laravel, he maha nga wa e whakamahia ana tenei tauira ki te whakahaere i nga rauemi penei i nga hononga raraunga, i nga tautuhinga whirihoranga.
Anei tetahi tauira taketake o te whakatinana tauira Singleton ki te PHP:
<?php akomanga Singleton { tūmataiti pateko $ instance = null;
mahi tūmataiti __hanga() { // Kaihanga motuhake ki te aukati i te tere tere }
mahi pateko tūmatanui getInstance(): whaiaro { if (null === whaiaro::$tauira) { whaiaro::$instance = new self(); } whakahoki mai i a koe ano::$inatanga; }
// Ka taea te taapiri atu etahi atu tikanga me nga taonga ki konei }
// Whakamahinga: $singletonInstance = Takitahi::getInstance(); // Inaianei kei a koe tetahi tauira o te akomanga Singleton
// Tauira whakamahi i Laravel: $database = DB::hononga('mysql'); // Tikina he tauira hononga pātengi raraunga (kotahi)
I roto i te tauira waehere:
Ko te akomanga Singleton he kaihanga motuhake hei aukati i te hangai tika;
Ko te tikanga getInstance() e whakapumau ana kia kotahi noa te tauira o te akomanga;
Ka taea e koe te taapiri i etahi atu tikanga me nga taonga ki te akomanga Singleton ina hiahiatia;
Ka whakamahia ano e te ipu ratonga Laravel te tauira Singleton ki te whakahaere i nga whakawhirinakitanga o te karaehe me te mahi i te werohanga whakawhirinaki. Mena kei te mahi koe i roto i a Laravel, whakaaro ki te whakamahi i tana ipu ratonga me te rehita i to akomanga ki tetahi kaiwhakarato ratonga mo nga keehi tino matatau.
Ko te Whakatau "Nga Whare Kaariki", i hangaia e te Kotahitanga o Europi hei whakarei ake i te kaha o te kaha o nga whare, kua mutu tana mahi ture me te…