Standardi za kodiranje za WordPress [Vodnik]
Razlog, da sploh imamo standarde kodiranja (ne samo za WordPress), je ustvarite znano okolje za programerje dela na projektu. WordPress še posebej zajema široko paleto izdelkov. Od samega jedra do tem in vtičnikov, je treba še veliko pogledati - in veliko o tem, da se pomešamo.
Če vsakdo oblikuje svojo kodo na enak način, uporabi komentarje, enak slog dokumentacije in tako naprej, je sodelovanje lažje in krivulja učenja za pridružitev novemu projektu ne bo tako strma..
Potreba po koheziji v WordPressu je povečana zaradi stanja, v katerem je koda. WordPress ne sledi strogemu objektno usmerjenemu pristopu in ne uporablja vzorca MVC. Projekti, ki sledijo smernicam OOP in MVC brez izjeme (kot je Laravel), imajo doslednost in najboljše prakse “pečen v” zaradi svoje strukture.
WordPress je žal zrel za kodiranje špagetov delaš kar hočeš. Najboljše prakse je težko uveljaviti samo zato, ker lahko izdelki, ki uporabljajo slabo kodo, delujejo prav tako dobro (na površini).
Z upoštevanjem standardov za kodiranje WordPress se lahko naučite nekaj o kodiranju etosa WordPressa, ustvarite več WordPress združljivih izdelkov. pokažite skupnosti, ki vam je všeč, in izgovorite visoko kakovostno kodo.
Več na Hongkiat.com:
- 10 najhujših nočnih mor za spletne razvijalce
- 5 razlogov, zakaj bi CSS lahko bil najtežji jezik vseh
- 30 Običajne reakcije Programerji imajo, ko stvari gredo narobe
Nekaj opomb glede standardov
Standardi ne opredeljujejo pravilnega in napačnega. Morda se ne strinjate s pravilom, npr. Naj se vedno uporabljajo oporniki, tudi če niso potrebni. Namen standardov kodiranja WordPressa ni, da se odločite, če imate prav ali narobe, to je, da se odločite, kako naj se to stori v WordPressu.
Standardi se ne razpravljajo. Uporaba standardov ni mesto, da bi se uprli stilu vdolbine, ki vam ni všeč. Če je nekaj v standardih za kodiranje, potem to naredite tako. Razvijalci WordPress vas bodo radi radi! To je reklo, če se ne strinjate z nečim, tam dvignite svoj glas in pustite ljudi vedeti. Vedno je mogoče narediti stvari bolje, vendar morate spremeniti svoj stil kodiranja, če standardi to dopuščajo.
Doslednost pri analnem zadrževanju. Če ste v zadnjih 10% vašega projekta in ste pravkar ugotovili, da uporabljate napačno konvencijo za poimenovanje za razrede, se ne preklapljajte v sredini. Po mojem osebnem mnenju bi raje prebral nekaj, kar je dosledno napačno, kot nekaj, kar je včasih pravilno in včasih ne. Vedno lahko napišete skript, da spremenite stvari naenkrat, ali preberete kodo na koncu.
Upoštevanje standardov je težko! Namestitev oklepaja na isto linijo kot funkcija namesto črte spodaj je precej preprosta, tudi če ste že prej vajeni vnosa. Vendar, ko morate razmisliti o 100 majhnih pravilih, postane celoten proces nekoliko nagnjen k napakam. Kljub močni drži glede standardov sem kriva kot vsi drugi pri napakah. Na koncu dneva nepravilna vdolbina ni nepreklicni greh. Poskusite po svojih najboljših močeh, da se držite vseh pravil, vse boste izvedeli pravočasno.
Standardi za kodiranje WordPress
Zdaj ima WordPress štiri vodila, enega za vsak glavni jezik: PHP, HTML, Javascript in CSS. So del večjega obsega znanja, Priročnika temeljnega prispevka. Če bi šli skozi vse, bi potrebovali nekaj časa, zato sem poudaril nekaj odlomkov iz štirih jezikov, ki jih pogosto vidim, da se ljudje motijo.
PHP
PHP je glavni jezik WordPressa in je precej ohlapen tip, zaradi česar je zrel za regulacijo.
Slogi oklepajev
Začetne zagone naj bodo vedno na koncu vrstic. Povezane stavke je treba postaviti v isto vrstico kot prejšnja zaključna oklepaja. To je najbolje prikazati z zgledom kode:
if (condition) // Naredite nekaj elseif (pogoj) // naredite nekaj drugega // naredite nekaj
Velikodušna vesoljska uporaba
Nisem oboževalec zgnječene kode (imam slab vid), zato je to tisto, ki mi je še posebej všeč. Postavite razmake po vejic, in na obeh straneh logično, primerjavo, niz in operaterji dodelitve, po če, elseif, za, za vsakogar in stikalo izjave in tako naprej.
Lažje je reči, kje ne bi smeli dodajati prostorov! Edini čas, ko ne smete dodajati presledkov, je takrat, ko tipa ali sklicevanje nizov.
Precej nejasna izjema za izjemo so nizi, kjer je matrični ključ je spremenljivka, v tem primeru uporabite presledek. Ta primer bi moral to pojasniti:
funkcija my_function ($ complete_array = null, $ key_1 = 4, $ key_2 = 'bar') if (null == $ complete_array) $ final_array = $ complete_array; else $ key_1 = (integer) $ key_1; $ final_array [0] = 'to'; $ final_array [$ key_1] = 'je'; $ final_array [$ key_2] = 'an'; $ final_array ['last'] = 'primer'; vrne $ final_array;
Konvencije o poimenovanju
Tega se je težko navaditi, še posebej, če prihajate iz različnih okolij. Na kratko:
- Imena spremenljivk moral bi biti vse male črke, besede ločene s podčrtaji
- Imena razredov uporabljati velike besede ločeni s podčrtaji. Kratice bi moralo biti vse velike črke
- Konstante moral bi biti vse velike, podvodnice
- Imena datotek moral bi biti vse male črke, ločena s pomišljaji
Yoda pogoji
Pogoji pisanja drugače, kot ste jih vajeni, bodo preprečili napake pri razčlenjevanju. Izgleda malo čudno, vendar je boljša koda.
if ('Daniel' === $ name) echo 'Napišite članek, ki ga želite';
HTML
HTML nima toliko pravil, povezanih z njim, lahko sem prišel s precej, da bi stvari bolj modularne. Ob pisanju HTML-ja morate vedeti samo pet pravil:
- Vaša koda mora biti potrjena proti validatorju W3C.
- Samozapiralne HTML oznake morajo imeti točno en prostor pred poševnico naprej (to je tisto, kar osebno sovražim, vendar je specifikacija W3C, ne le WordPress hišne živali)
- Atributi in oznake morajo biti vse male. Edina izjema je, če so vrednosti atributov namenjene za prehrano ljudi, in v tem primeru jih je treba natipkati naravno.
- Vsi atributi morajo imeti vrednost in morajo biti navedeni (pisati
ni pravilna)
- Vdolbino je treba doseči z uporabo zavihkov in slediti logični strukturi.
CSS
CSS je še en slabo vtipkani jezik, tako da je tu še veliko dela. Kljub temu so standardi zelo preprosti za kodirnike.
Izbirniki
Izbirniki morajo biti kvalificirani, kot je potrebno, človeško berljivi, z malimi črkami, z besedami ločenimi s pomišljaji, izbirniki atributov pa morajo uporabljati dvojne narekovaje. Tukaj je kratek primer:
input [type = "text"], vnos [type = "password"], .name-polje ozadje: # f1f1f1;
Naročilo premoženja
Standardi priznavajo potrebo po določenem osebnem prostoru, saj ne predpisujejo posebnega naročila za pravila CSS. Kaj so narediti pravijo, da morate slediti semantični strukturi smiselno. Združite lastnosti po njihovih razmerjih ali jih združite po abecedi, Samo ne zapiši jih naključno.
Največji vzrok za naključnost je “Oh, tudi jaz moram dodati maržo” in nato nadaljujte z dodajanjem na dno. Vzemite dodatnih 3 sekunde in dodajte pravilo na logično mesto.
- Zaslon
- Položaj
- Model škatle
- Barve in tipografija
- Drugo
.profil-modal prikaz: blok; položaj: absolutno; levo: 100px; vrh: 90px; ozadje: # ff9900; barva: #fff;
Oblikovanje vrednosti
To je en kraj, kjer še posebej sovražim, da vidim nedoslednosti. Če ne sledite smernicam, je to še vedno bolje kot včasih videti prostor pred vrednostjo; včasih z uporabo kratice, včasih ne; včasih z uporabo enot na vrednosti 0, včasih ne itd.
Oblikovanje vrednosti je precej zapleteno, vendar seveda prihaja z nekaj prakse. Oglejte si natančno vodilo v Codexu za oblikovanje vaših vrednosti.
Javascript
Po mojih izkušnjah je Javascript najbolj nagnjen k temu, da gredo povsod. Medtem ko mnogi razvijalci vedo veliko količino Javascript je bilo naučiti postopoma, kot naknadno misli HTML, CSS in PHP. Ko začnete z novim jezikom, naredite veliko več napak in če te napake ne povzročijo usodnih napak, lahko postanejo ukoreninjene v vas.
V mnogih primerih se standardi nanašajo na mejno vrednost ali stanje “če črta ni predolga”. To se nanaša na vodnik po stilih jQuery, ki nalaga a Omejitev 100 vrstic na vrstice. Vodnik za WordPress temelji na vodniku jQuery, zato je dobro, da to preberete tudi.
Točke s podpičjem
To je najenostavnejše pravilo, ki je pogosto spregledano. Nikoli, nikoli ne izpustite podpičja samo zato, ker vaša koda deluje brez nje. To je preprosto.
Zamikanje
Tabele je treba vedno uporabiti za zamik. Vsebino zaprtja morate tudi zamakniti, tudi če je vsebina celotne datoteke vsebovana v eni. Nisem prepričan, zakaj, toda nezavestno zaprtje na najvišji ravni me je prisililo, še preden sem prebrala standarde.
Breaking lines
Pri razbijanju dolgih nizov vedno prekinite črto po operaterju, ne pustite, da bi spremenljivka visela. Zaradi tega je na prvi pogled očitno, da je linija prekinjena in niste ravno pozabili podpičja.
Če je pogoj dolg, ga razdelite na več vrstic in dodajte dodatni zavihek pred njim. Ta izgleda zelo čudno za moje oči, vendar ločitev dodaja med pogojem in telesom je zelo vidna.
if (firstCondition () && secondCondition () && thirdCondition ()) var html = 'Ta vrstica je sestavljena iz' + n + 'besed, zato jo je treba razčleniti po' + 'operaterju';
jQuery Iteracija
V skladu s standardi jQuery iteracija (jQuery.each ())
uporabljajte samo na objektih jQuery. Uporabite osnovno za, za / in, medtem zanke v Javascriptu za ponavljanje v drugih zbirkah.
Zaključek
Obstaja veliko za opaziti in spremljati in ni nobenega načina, da bi lahko uporabil vse to naenkrat. Vašo kodo vzemite čim bližje standardom in jih natančno spremljajte.
Po mojem mnenju doslednost je najpomembnejše pravilo. Bolje je, da dosledno naredite nekaj napačno kot da preklopite na pol poti. To še posebej velja za prakse oblikovanja, saj te ne vplivajo na funkcionalnost vaše kode in - večinoma - lahko kasneje preprosto spremenite.
Ali sovražite element standardov za kodiranje, ali menite, da bi bilo treba dodati nekaj? Sporočite nam v komentarjih!