WordPress, plugin & kódminőség

 

Egy WordPress plugint írok már kb. két hónapja, és ennek keretében több pozitív élmény is ért.

Egyrészt elég hamar átálltam Dreamweaver-ről az Eclipse for PHP Developers csomagra. A Dw CS5 ugyanolyan lassan indul, mint az Eclipse, utóbbi viszont sokkal többet nyújt egy kódoló felhasználónak, és menet közben kevesebbet is gondolkodik. Ezen nagyon meglepődtem, de örülök, hogy találtam egy számomra ideális PHP fejlesztő környezetet.

Másrészt a WordPress kódját túrom egyfolytában, főleg mióta azt a fejlesztési ágat, ahol WP-n kívüli a rendszer fele, lefújtam, és benyomtam mindent egyetlen WP plugin-ba. Szóval van dokumentáció a függvényekhez. Van komment a függvények törzsében. Van egy egységes stílusa a kódnak, és van egy érthető logikája a rendszer felépítésének. És ez nem csak a felszínen van, hogy oké, persze, meg lehet szokni, hogy ez itt, az meg ott van, hanem tényleg szervezetten van felépítve az egész rendszer. Ahol még fennmaradt régről a káosz, az is szépen fogy a verziószámok növelésével. (Néha előfordul 3 ugyanolyan nevű függvény, amik nincsenek osztályba zárva, de a fájlok elhelyezéséből legalább rá lehet jönni, hogy mikor melyiket kell nézni.)

Szóval volt egy pont, amikor úgy terveztem, hogy a WP plugin csak admin felületet fog nyújtani, meg egy linket a saját rendszeremhez (közös felhasználókezelés és hasonlók), és ettől függetlenül saját kód fog csak futni az oldalnak azon a részén. Ami mellette szólt: én kódom, tudom, mit csinál, csak az van ott, amire szükség van, nem sokszáz függvényhívás, mire a header kiküldéséig eljutok. Ami ellene szólt: a WP egy kiforrt rendszer, amiben van egy csomó funkció direkt azért, hogy könnyű legyen hozzá fejleszteni. Tehát vagy lefejlesztem ezeket magamnak is (kódduplikáció), majd pedig a WP témát is átemelem a saját rendszerembe (szintén), vagy belátom, hogy hamarabb is végzek a projekttel, ha konkrétan azt írom, ami nekem kell (és nem egy keretrendszert tákolok). Így végiggondolva egyértelmű volt, min is kéne dolgoznom…

   
There's no response yet to this post. You can leave yours at the bottom of the page. Pinging is currently not allowed.
 

Leave a Reply

 

You must be logged in to post a comment.