Přechod na Symfony

PHP

POZOR! Článek jsem napsal před více jak rokem, a tudíž už nemusí reflektovat můj nynější názor nebo může být zastaralý.

Už tomu bude skoro rok, co jsme se ve firmě rozhodli jít do Symfony a tímhle příspěvkem chci shrnout svůj osobní názor na tenhle framework a jaká k němu vlastně byla cesta.

Rozhodovali jsme se mezi Nette a Symfony. Druhý jmenovaný zvítězil především díky své rozšířenosti v zahraničí, jelikož máme a chceme mít na starosti mezinárodní projekty.

Abychom se do problematiky kolem Symfony dostali co nejrychleji, poslala nás firma (a za to jí tímto převelice děkuji :)) na dvoudenní školení do Brna ke klukům z Webové univerzity. A musím říct, že to opravdu stálo za to. Oba školitelé znají framework a celý ekosystém okolo, mají s ním letité zkušenosti a dokonce přispívají do kódu. Myslím, že lépe jsme si vybrat nemohli. Dvoudenní nalejvání „best practices“, hromada poznámek, spousta kódu a následující týden jsme začali na našem prvním projektu.

Musím zmínit, že v objektovém PHP pracuji několik let a byl jsem zvyklý používat komponenty například z Nette (Nette/Cache, Nette/Utils, Latte, Tracy…) a dalších balíků z Packagist, ale nepoužíval jsem celý framework, a tak mě Symfony dostalo svojí konzolí a termíny jako EventDispetcher, Dependency injection kontejner (jó.. jó.. nějaké to povědomí jsem o DI měl, ale služby s autowiringem… páni…), a tím jak nádherně funguje v kombinaci s Doctrinou (ORM) a Twigem (šablonovací systém). Ale zase, abych se tu nerozplýval, jak nad belgickou čokoládou, tak ta Doctrina není vždy výhra. Proč? Z mého pohledu především z hlediska rychlosti. Když máte entitu s kolekcemi, které mají kolekce, a ty taktéž…, tak stejně je potřeba sáhnou po SQL, respektive DQL a trochu si zaoptimalizovat, a potom to ztrácí své kouzlo jednoduchosti.

Nyní máme za sebou několik velkých i malých projektů postavených na Symfony, další (tentokrát třídenní školení) školení a musím za sebe jako vývojáře říct, že mne to za ten rok ohromě posunulo k čistějšímu testovatelnému a znovupoužitelnému kódu. Opravdu, když si člověk napíše dobře službu, tak ji použije hned v dalším projektu. Neříkám, že to je doména pouze Symfony, ale právě ona byla pro mne cestou k cíli.

Znáte někoho, komu by článek mohl pomoct? Zasdílejte mu ho :)

Komentáře