Esploranta PHP Plej Bonaj Praktikoj

?

PHP Best Practices

PHP Plej Bonaj Praktikoj

Superrigardo: Ĝusta de ĝia iniciato, PHP estas ĝenerale uzita evoluigi araneaĵon bazita aplikojn. Pro tio ke PHP estas scripting lingvo unu devas sekvi kelkajn regulojn dum evoluiganta.

En ĉi tiu dokumento, Mi parolos pri la plej bonaj praktikoj kiu estas ĝenerale sekvita en la PHPa mondo.

Enkonduko: PHP ne postulas ajnan enkondukon. Tamen, kiel en ajna teknologio, Ni devas sekvi kelkajn gvidliniojn dum evoluiganta. Ĉi tiuj gvidilaj linioj kiam kunmetita formi la bonajn praktikajn regulojn.

Sekvanta estas la plej bonaj praktikoj kiu ni devus sekvi dum laboranta kun PHP:

Erara raportado devus esti turnita sur –

Erara raportado estas tre utila funkcio en la PHPa mondo. Ni devas ebligi tion ĉi dum ni estas en la evoluada fazo. Tio ĉi helpas nin identigi la problemojn en nia kodo. La plej ofte uzita ĉefaĵon estas ‘E_ĈIUJ‘ Kiu helpas nin ekvidi ĉiuj la avertoj kaj kritikaj eraroj. Ĝi devas esti notita ke antaŭ ol ni metis nian kodon en produktado, Ni devus elŝalti ĉi tiun ĉefaĵon kiel tio ĉi malkovrus ĉiuj la potencialaj eraroj sur la retumiloj.

Uzi la SEKAN alproksimiĝon –

SEKAJ starejoj por ‘ne Ripetas Vin mem'. Ĉi tiu koncepto estas tre utila programara koncepto kaj devus esti uzita en ajna programara lingvo ekz. Java, C#, PHP ktp. Uzanta la DRY Alproksimiĝo ni certigas ke estas ne superflua kodo. Peco de kodo kiu malobservas DRY Estas plu-gvidita al kiel MALSEKA Solvo. MALSEKAJ starejoj por ‘Skribi ĉion dufoje' Aŭ ‘Ni ĝuas tajpanta'. Lasi nin havas rigardon en la sekvanta kodo –

Listing1 – DRY & MALSEKA alproksimiĝo

[Kodo]

$Mysql = mysql_konektas ( ‘Localhost', ‘Mysqladmin_uid', ‘mysqladmin_pwd’ );

Mysql_elektita_db( ‘DBa_NOMO’ ) Aŭ morti( “Mizera !! Neniu datumaro elektis!”);

[/Kodo]

Tio ĉi super kodo estas bazita sur la MALSEKA alproksimiĝo kiel la rilataj parametroj estas hardcoded. Sekvanta la SEKAN alproksimiĝon, La supra kodo povas esti ŝanĝita al –

[Kodo]

$Db_gastiganto = ‘ Localhost ‘;
$Db_uzanto = ‘ Mysqladmin_uid ‘;
$Db_pasvorto = ‘ Mysqladmin_pwd ‘;
$Db_datumaro = ‘ DBa_NOMO ‘;

$mysql = mysql_konektas($Db_gastiganto, $Db_uzanto, $Db_pasvorto);
Mysql_elektita_db($Db_datumaro);

[/Kodo]

Indentation kaj Uzo de whitespace –

Dum skribanta kodon en ajna programara lingvo, Ni devas certigi ke la kodo estas konvene indented kaj sufiĉaj blankaj spacoj estas donita wherever postulita. Tio ĉi pliigas la legeblecon de la kodo kaj helpas nin daŭrigi la kodon en pli efika maniero.

Serioza kaj consistence nomanta normojn –

Kiel en ajna programara lingvo, PHPaj fakuloj ankaŭ konsili sekvi seriozan nomanta normojn. Ni havas du gravajn alproksimiĝojn dum ni certigas efektivigi tion ĉi –

  • Uzanta Camel Kazo – En #?i tiu #alproksimi?o, La unua letero estas en pli malalta kazo kaj unua letero de ĉiu vorto poste estas en supra kazo.

Enlistiganta 2 – Koda ereto uzanta camel kazo

[Kodo]

Publika klaso MyClass {

Publika malpleno MEthodNAme(Ŝnuro aRgNAme) {

}

}

[/Kodo]

  • Uzanta emfazas inter du vortoj – En #?i tiu #alproksimi?o, Ni metis emfazi karakteron (‘_') Inter ĉiu du vortoj. Uzanta ĉi tiun alproksimiĝon, La supra kodo povas esti modifita kiel nesufiĉe –

Enlistiganta 2 – Koda ereto uzanta emfazas

[Kodo]

Publika klaso MyClass {

Publika malplena metodo_Nomo(Laĉi arg_Nomo) {

}

}

[/Kodo]

Profunda Nestado devus esti evitita –

Plurnivela nestado reduktas la legeblecon de la kodi esti ĝi ajna programara lingvo. Ajna programadisto devus eviti uzanta profundan nestadon. Lasita-a vidi la sekvantan kodan ereton –

Enlistiganta 4 – Koda ereto havanta multi nivela nestado

[Kodo]

Publika klaso MyClass {

Publika malplena metodo_nomo(Laĉi arg_nomo) {

Se (Estas_writable($Teko)) {

Se ($Fp = fopen($Dosiera_loko_vojo,’w’)) {

Se ($Ŝtopi = extractSomeConditionalStuff()) {

Se ( Fwrite ( $Fp, $Aĵo) ) {

// …

} Alia {
Revena falsa;
}

} Alia {
Revena falsa;
}

} Alia {
Revena falsa;

}

} Alia {
Revena falsa;
}

}

}

[/Kodo]

La supra kodo estas simpla nestita kodon. Kiel ni povas vidi ĝin estas tre malfacila kalkuli kiun se blokaj finoj kie. Havi pli bonan legeblecon, Lasi nin modifi la supran kodon kiel nesufiĉe –

Enlistiganta 5 – Koda ereto evitanta multi nivela nestado

[Kodo]

Funkcia metodo_nomo (Laĉi arg_nomo) {

// …

Se (!Estas_writable($Teko)) {
Revena falsa;
}

Se (!$Fp = fopen($Dosiera_loko_vojo,’w’)) {
Revena falsa;
}

Se (!$Ŝtopi = extractSomeConditionalStuff()) {
Revena falsa;
}

Se (Fwrite($Fp, $Aĵo)) {
// …
} Alia {
Revena falsa;
}
}

[/Kodo]

Meti adekvatajn rimarkojn –

Kiel en ajna programara lingvo, Fari certe ke via fonta kodo havas sufiĉe entekstajn rimarkojn. Tio ĉi estas norma praktiko kaj devus esti sekvita. Tio ĉi helpas en pli fora analizanta la kodan bazon kiel ĝi estas norma praktiko ke la persono kiu estas evoluiganta la kodon ne estas daŭriganta la saman. Eĉ se la sama persono estas demandita fari kelkajn ŝanĝojn en la kodo, Entekstaj rimarkoj ĉiam estos helpemaj kompreni la motivon skribi la kodon. Por daŭrigi altan klasan rimarkon normo en PHP mi rekomendus vin akiri familiarize kun iu PHPa dokumentara pako ekz. PhpDocumentor.

Ne metas phpInfo() Funkcio en araneaĵa radiko –

PhpInfo() Estas tre grava funkcio kaj devus esti uzita kun plejebla prizorgo. Uzanta ĉi tiun funkcion iu ajn povas akiri la detalojn de la servila medio. Ĝi estas ĉiam konsilita teni la dosieron enhavanta PhpInfo() Funkcio en gardata loko. Unufoje la evoluado estas farita, Ĝi devus esti elprenita de la kodo tuj.

Neniam fidi la uzanton –

Se via apliko okupas ajnan uzantan enigon, Skribi vian kodon en tia vojo ke ĝi povas pritrakti ĉiuj specoj de eblaj enigoj. Bona alproksimiĝo protekti nian aplikon de hackers estas al ĉiam initialize via variables kun iu komenca valoro kiu ne povas esti rilata en la ekzistanta komerca fluo.

Uza Konservejo mekanismo wherever postulis –

Bona programaro alproksimiĝas ĉiam sugesti uzanta la konservejan mekanismon kiel la konservejo helpas nin atingi pli bonan elfaron. En la php monda caching estas atingita uzanta –

  • Memcached – en memora ŝlosilo-valora paro vendejo uzita por malgrandaj blokoj de datumo.
  • APC – Alternativa PHPa Konservejo malferma opcode konservejo por PHP
  • XCache – Rapida fidinda PHP opcode konservejo
  • Zend Konservejo – Kolekto de APIs por konscianta altnivelan caching kapabloj.
  • EAcclerator – Malferma fonto caching ilo

Eviti kopianta kroman variables –

Ĝi ne estas bona programara praktiko kopii predefined variables en loka variables havanta pli malgrandajn nomojn. Tio ĉi havas malfavoran efikon sur la elfaro de la apliko. Lasi nin vidi la sekvantan kodan ereton –

Enlistiganta 6 – Kopianta kroman variables –

[Kodo]

$Desc = striaj_etikedoj($_POŜTO[‘PHPa priskribo’]);

Eĥi $desc;

[/Kodo]

La supra koda ereto estas ekzemplo kopii varian en loka varia nenecese. Tio ĉi ne estas ĉe ĉiuj bona praktiko. La sama motivo povas esti atingita de uzanta la sekvantan kodon –

[Kodo]

Eĥa strio_etikedoj($_POŜTO[‘PHPa priskribo’]);

[/Kodo]

Uzaj kadroj –

Kadroj estas evoluigita post multo de esploraj laboroj kaj tial ili pruvas esti malpli problema. Ili faras nian vivon pli facila kiel ili provizas pruvita solvojn. En PHP estas multaj kadroj havebla. Dum evoluado, Ni devus fari uzon de ĉi tiuj. Unu el ĉi tiuj kadroj kiu estas ĝenerale uzita estas MVC aŭ Modela Vida Regilo.

Konkludo:

Lasi nin konkludi nian diskuton en la formo sekvi kuglojn –

  • Plej bonaj praktikoj gvidas nin evoluigi kodon en pli efika maniero.
  • Sekvanta plej bonajn praktikojn certigas pli bonan elfaron de la apliko.
  • Kiel en alia programara lingvo, PHP ankaŭ sekvas la plej bonajn praktikojn en la industrio kiu certigas ke la apliko evoluigita estas bona unu.

?

Etikedita sur: ,
============================================= ============================================== Buy best TechAlpine Books on Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share