PHP: dežela tisoč okvirjev

Avtor: Louise Ward
Datum Ustvarjanja: 6 Februarjem 2021
Datum Posodobitve: 18 Maj 2024
Anonim
Repair of turbines and injectors on a volvo bl71b backhoe loader.
Video.: Repair of turbines and injectors on a volvo bl71b backhoe loader.

Vsebina

Vprašajte me, katero ogrodje naj uporabim in verjetno bom imel trenutek čedne starke in vam rekel, da so vsi okviri tako slabi kot drug drugega. Kar še ne pomeni, da so vsi res slabi, toda v PHP imamo nepredstavljivo veliko okvirov (običajno naveden kot N + 1, kjer je N število razvijalcev PHP na svetu) in verjetno so imeli vsi smisel osebi, ki jih je izumila.

Izbira okvirov je verjetno boljša, kot če bi uporabili samo en okvir, ne glede na to, kaj natančno ste poskušali zgraditi, saj je ta 'najboljši' (ne glede na merilo 'najboljši'). Ta izbor okvirnih ponudb pomeni, da lahko izberete nekaj, kar ustreza potrebam projekta, in to bo morda celo dokumentirano. Okviri na kateri koli platformi so resnično tam, da zagotavljajo strukturo, module za večkratno uporabo in knjižnice ter se na splošno izogibajo vsem dolgočasnim in ponavljajočim se opravilom znova in znova. Na primer pri gradnji sistemov za upravljanje vsebin, bi nekaj moralo zame obdelati in potrditi polja obrazcev; če se prepustim samim sebi, lahko zamudim kaj pomembnega in raje naredim elemente vsakega projekta, ki so drugačen, namesto tistih, ki so vsakič enaki!


Okviri s polnim skladom

Okvirji s polnim skladom, kot je Zend Framework, so lahko lep začetek za razvijalce brez veliko izkušenj z arhitekturo. Daje dobro strukturo, na katero lahko obesite novo aplikacijo, okoli nje pa je dober 'ekosistem' - veliko knjig, vadnic in nekaj primerne dokumentacije. Če poskušate zgraditi veliko aplikacijo, ki jo bo vzdrževalo veliko ljudi, potem bo priljubljen, celovit okvir verjetno dobra izbira, saj bo narekoval precej strukture in bo dobro znan in razumljiv.

Imeti strukturo za pomoč pri ločitvi je vedno dobro; Na začetku svoje kariere sem sodeloval z nekaterimi zelo mlajši razvijalci in jih poskušali naučiti vzorca MVC (Model View Controller), ki je bil takrat relativno nov. Odločili smo se, da bomo uporabili Smarty v sloju pogleda; delno zato, da bi oblikovalci lažje delali s predlogami, deloma pa zato, da ko je nekdo prišel k meni in rekel "kako naj naredim X s Smarty?" Lahko bi rekel "ne delaj X v pogledu!" (devetkrat od 10, to je bil odgovor). Če imamo okvire, nam pomaga najti enako ločitev v drugih delih naše aplikacije. Mnogi od njih podpirajo integracijo s predlogami, kot je Smarty ali moja nova najljubša Twig, tako da lahko ta orodja vzamete s seboj, kateri koli okvir izberete.


Olajšajte tovor

Obstaja veliko lažjih okvirov kot Zend Framework, na primer precej delam s CodeIgniter. Je tako celovit in močan kot Zend Framework? Ne, ni. Toda kot pomožni okvir za hitro gradnjo aplikacije je koristen. Na splošno se lahko okviri z manj „pomožnimi“ funkcijami lažje znajdejo, saj je veliko bolj očitno, kako se deli kombinirajo. V neznanem okviru (zame je to skoraj vse) so avtomatični biti tisti, ki otežujejo delo in odpravljanje napak.

Ta občutek, da se "izgubimo v novem okviru", je neizogiben in popolnoma frustrirajoč; tudi izkušeni razvijalec se počuti kot novinec, ko ne ve, kako kaj deluje. Če res nimaš sreče, si boš izbral ogrodje, katerega IRC kanal ti bo povedal, da si tudi ti idiot! Prav ta zelo negativna začetna izkušnja veliko ljudi odvrne od uporabe novega okvira ali njegovega sprejetja, zelo malo okvirov pa dobro pomaga novim uporabnikom pri tej začetni oviri.


V PHP imamo tudi nekaj okvirov, ki v resnici niso okviri na način, kot običajno uporabljam besedo. Imamo nekaj čudovitih komponent; zbirke knjižnic, zasnovane tako, da jih lahko poljubno uporabljate in se lepo igrate, kot sta Zeta Components (prej eZ Components) in Symfony Components (ste že videli njihovo spletno mesto? Dobili so nagrado za najboljšo umetniško delo!). Najboljše in najbolj podpeto med njimi so seveda PHP-jeve ponudbe PEAR in PECL - te nekako pozabimo v tem pogumnem novem svetu okvirov.

Mikrookvir

Mikrookvirji so nov trend v PHP; to so super lahke ponudbe, ki vam pomagajo le hitreje zlepiti stvari. Dober primer je Slim, ki je zelo hiter in enostaven za uporabo in razume koncepte RESTful. Temelji na ideji „poti“, ki so vzorci URL-jev. Registrirate pot in opravite povratni klic, ki ga je treba poklicati, ko se zahteva ta URL.

Večina razvijalcev PHP sprejme okvir in se ga drži, ali pa ga lahko uporabi v službi in drugega za svoje hobije ali odprtokodne projekte. Obstaja malo soglasja glede "najboljšega" ogrodja za uporabo, zato se vsi držijo tistega, kar vedo, rezultat pa je vzporeden razvoj velikega števila okvirov! Všeč mi je, da lahko izbiram, a sem omenil, da so vsi enako slabi kot drug drugega?

Če poznate Zend Framework, se na koncu opisujete kot razvijalec Zend Framework; pisanje v drugem okviru vam ne bi bilo prijetno, dokler se ne bi imeli priložnosti spoprijeti z njim in se verjetno ne spomnite mnogih surovih funkcij PHP za stvari, če jih ne uporabljate pogosto. Ta ideja, da smo postali razvijalci, specifični za ogrodje, ki delajo zgolj nad sloji abstrakcije, je za PHP nekoliko čudna. Navsezadnje je to jezik "za reševanje spletnega problema". Napisano je v jeziku C in je samo po sebi hiter, lahkoten jezik ... pod pogojem, da ne čakate, da se zažene velik okvirni bootstrap postopek! Iz tega konteksta je nastal manifest MicroPHP, ki ga je napisal človek, ki mu pravimo Funkatron (čeprav mu je res ime Ed Finkler). Gre za vrsto izjav, ki pravijo, da je v redu zgraditi številne interoperabilne majhne module, da večji ni boljši in da je resnično življenje Java prekratko - tudi če je napisano v PHP.

Zanimivo
Credit Suisse animacija prikliče duh pop arta
Preberi Več

Credit Suisse animacija prikliče duh pop arta

To kul animacijo, ki jo je navdihnil ameriški pop umetnik Roy Lichten tein, je nedavno u tvaril kreativni tudio Mill + za vetovno podjetje za finančne toritve Credit ui e.V režiji Carla Addyja iz podj...
Ustvarite učinek kalejdoskopa v Photoshopu
Preberi Več

Ustvarite učinek kalejdoskopa v Photoshopu

Ob taja veliko orodij za u tvarjanje kolažev, vendar nobeno ni tako zadovoljivo kot u tvarjanje la tnega kolaža z uporabo Photo hop CC ali podobne program ke opreme. Zgornji učinek kalejdo kopa o odkr...
7 najboljših spletnih mest agencije Manchester v letu 2017
Preberi Več

7 najboljših spletnih mest agencije Manchester v letu 2017

Vča ih je bilo treba, da bi va , če va re no jemljejo kot kreativno agencijo, edež v glavnem me tu - idealno v Londonu, Parizu, Berlinu ali New Yorku.Toda v teh digitalnih dneh je zdaj pov em mogoče k...