PHP parim tava: tüüpparameetrid
On tavasid, mida me koolis õpime, mida me võtame omaks laiskuse kaudu, mida võtame omaks harjumusest, kas seda nähes või süstemaatiliselt kopeerides ja kleepides. Aja ja kogemustega on selge, et otsime üha selgemaid metoodikaid ja süntaksisid. Vaatamata suundumustele, mida iga keele ümber eristatakse, suudame sageli koodi lugemise abil kindlaks teha, millisel meie meeskonnal on selline süntaks C #-s on puristidel harjumus alustada kõiki oma liideseid tähega "I". Näiteks .
kokkuvõte
PHP, tasuta süntaks… liiga vaba?
Mul endal on mitmeid harjumusi, mis võimaldavad mul oma koodi tavapäraselt üles ehitada. Seda selleks, et hõlpsasti orienteeruda, kiiresti töötada, aga ka kolleegidele silumist ja koodi lugemist hõlbustada.
Sisestage selle parameetrid, mille jaoks? Ja miks see hea tava on?
PHP-s on süntaks väga vaba. Ma mõtlen väga vaba selle all, et keel pole väga paljusõnaline. Olemata näiteks Java keelte toetaja, arvan, et selle parameetrite tippimine võib meid meie töös ainult aidata.
Miks raisata aega andmetüübi kirjutamisele?
Tõepoolest, aga võrdleme kohe plusse ja miinuseid.
Miinusena, ilma et oleks halbu aegu, on mul raske tsiteerida teist argumenti kui see, mida ülal kirjutasin.
Plusside hulgas võiksin need loetleda:
- See aitab mul koodi luua. Oma prototüübis (minu funktsiooni deklaratsioonis) tean, et selline ja selline argument peab olema akiir ou int.
- See võimaldab mul kiiremini siluda. Kui deklareerisite, et soovite tüüpilist argumenti Kasutaja teie meetodis ootab PHP kasutaja eksemplari. Või proovige anda akiir või mis tahes muud tüüpi kui ette nähtud, peatab PHP kohe. Tõsi, tõrge võib olla üsna "kõva", kuid kogu ülejäänud arendustöös ei esine tõenäoliselt ebaõnnestumist.
- Mu kolleegidele meeldib mu koodi lugeda nagu raamatut. Tõepoolest, kui me teame, et meetod setItem(…) võtab tüüpi argumendi Foo, see aitab. Ei ?
12funktsioon setItem($ üksus);funktsioon setItem(Foo $ item);
Tõsi, see nimekiri sisaldab vaid 3 punkti, kuid meie töö kohustab meid alati olema sõjajalal ja otsima alati uusi teid, soovitan teil proovida ja veenduda.
Peatatud probleem tüübiga segatud
Tõepoolest, ma pean tunnistama nõrkust, tüüpi segatud. Jube tüüp ja keelatakse ära. Neile, kes on C/C++ keeles kodeerinud, on see nagu eksemplari osuti deklareerimine tähega (tühine *).
Soovitan nii palju kui võimalik seda tüüpi mitte kasutada ja selle kasutamist piirata. Näide?
Meetod setPoireau(mixed $poireau) võtab parameetritena porrulauku, kuid kuna seda ei trükita, saab sellele anda ka hülgepoja… Probleemne.
Kui sa tahtsid porrulaugu söömist sundida, tead, mida pead tegema, ja tunnistagem, et sul on vildakas mõistus ja et sa tahaksid köögivilju anda, kutsun sind üles kasutama liidest (või klassikonspekti ) ja määratlege oma meetod nii.
|
|
Nõustun, et see näide ei pruugi olla parim, kuid see on selge.
järeldus
Tippimine ei ole kohustuslik, kuid jääb kättesaadavaks kõigile, kes soovivad töötada selgelt ja puhtalt. Soovitan seda teile tungivalt.
Võib-olla on meil ühel päeval õigus kirjutada tagasi meetod, mis aitab meid üha parema semantika otsinguil.