Tefito

Tauira Hoahoa Vs SOLID maataapono, painga me nga huakore

Ko nga tauira hoahoa he otinga taumata-iti motuhake mo nga raruraru ka hoki mai i roto i te hoahoa rorohiko.

Ko nga tauira hoahoa he otinga ka taea te whakamahi ki nga kaupapa maha.

Te taima panui: 5 minuti

Nga rereketanga nui i waenga i nga Tauira Hoahoa me nga maataapono SOLID

  1. 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.
  2. 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:

Panui houtanga
Kaua e ngaro nga korero tino nui mo te mahi auaha. Waitohu ki te whiwhi i a raatau ma te imeera.

<?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.

Ercole Palmeri

Panui houtanga
Kaua e ngaro nga korero tino nui mo te mahi auaha. Waitohu ki te whiwhi i a raatau ma te imeera.

Nga tuhinga o mua

Kei a Veeam te tautoko tino whanui mo te ransomware, mai i te whakamarumaru ki te whakautu me te whakaora

Ka whakarato tonu a Coveware na Veeam i nga ratonga whakautu mai i nga aitua. Ka tukuna e Coveware nga mahi whakawai me te whakatikatika…

23 Paenga-whāwhā 2024

Hurihuri Kakariki me te Mamati: He pehea te Huringa Matapae i te Hurihanga i te Ahumahi Hinu me te Hau

Ko te tiaki matapae kei te huri haere i te waahanga hinu me te hau, me te huarahi auaha me te kaha ki te whakahaere tipu.…

22 Paenga-whāwhā 2024

Ka whakaarahia e te kaiwhakahaere antitrust UK te whakaoho BigTech mo GenAI

Kua tukuna e te UK CMA tetahi whakatupato mo te whanonga a Big Tech i te maakete mohio. I reira…

18 Paenga-whāwhā 2024

Casa Green: hurihanga pūngao mo te oranga tonutanga i Itari

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…

18 Paenga-whāwhā 2024