AdminModule vs. BackendPresenter
Stále a pořád se na Nette Fóru setkávám s řešením AdminModule / FrontModule a podobnými. Moc toto řešení nechápu a tak bych se rád podělil o řešení, které používám já.
Místo AdminModule / FrontModule používám řešení “dělení presenterů”. Nebo-li místo AdminModule mám BackendPresenter a místo FrontModule mám FrontendPresenter.
Toto řešení používám z celkem jednoduchého důvodu, kterým je modulárnost. Co to má společného s modulárností? Pokud je vám jedno, kde se která třída a soubor v projektu “válí” tak se vás tento problém netýká. Pokud ale máte rádi pořádek, speciálně pokud máte rádi “standardizovaný pořádek”((používám a dodržuji PSR-0)) , tak je tu problém.
dělení modulů | dělení presenterů |
---|---|
AdminModule\ArticlePresenter | ArticleModule\BackendPresenter |
AdminModule\CategoryPresenter | ArticleModule\CategoryModule\BackendPresenter |
FrontModule\ArticlePresenter | ArticleModule\FrontendPresenter |
Z ukázky uvedené výše je za předpokladu použití PSR-0 patrné, že pokud chci do aplikace dodatečně nahrát modul starající se o články, musím u první varianty nahrát dvě složky, kdežto v případě druhém pouze jednu. Pokud ale přidáme další typ varianty - například API - vznikne nám ApiModule\ArticlePresenter
a to už máme složky tři (u druhé varianty by to bylo ArticleModule\ApiPresenter
).
Existuje i třetí varianta: - ArticleModule\AdminModule\ArticlePresenter - ArticleModule\AdminModule\CategoryPresenter - ArticleModule\FrontModule\ArticlePresenter - ArticleModule\ApiModule\ArticlePresenter Ta se mi ale příčí (je až moc ukecaná).
Ptám se tedy, co vás vede k používání AdminModule / FrontModule?