Aitom5: Nette component factories, extension, anonymni služby, modely, injectory

5 views
Skip to first unread message

Radim Hašek

unread,
Apr 1, 2014, 9:12:25 AM4/1/14
to Aitom5 News
Ahoj všem,

Zde ja pár doporučení pro programování na Aitom5:

1) Nette component factories
DULEZITE: pokud píšete továrnu na Nette komponentu v presenteru, či v komponentě. Měla by být protected. To platí už od začátku, jen jsme si to tolik nehlídali a rozmohlo se to.
https://aitomgroup.atlassian.net/browse/APET-86


2) Extension
Nette 2.1 umoňuje definovat extension přímo v neonu, včetě jeno případných parametrů. Už to nebudeme dávat do bootstrapu.

http://doc.nette.org/cs/2.1/di-extensions
https://aitomgroup.atlassian.net/browse/APET-165
http://filip-prochazka.com/blog/piseme-rozsireni-compileru-pro-nette-framework


3) anonymní služby

Je to novinka v Nette 2.1 Pokud se na službu v rámci DI nepotřebuje dále odkazovat podle jejího symbolu, zapisujte ji anonymně.

    services:
        - \Aitom\Be\SystemConfig\LayoutModel


4) modely

Připravuje se velký refaktoring základních modelů. Obecně je zatím nejvýhodnější aby měli každý modul v případě potřeby svůj vlastní a právě jediný model. Tento model se pak v konstruktoru sám naváže na případné základní modely. Toto převrstvení nám umožní jednoduše izoval potřeby modulu a zároveň očistit základní modely, které momentálně obsahují mnoho balastu, který mnohdy potřebuje jeden modul. Presenter pak vždy injectuje pouze jediný model.

Náznak, jak by to mělo vypadat je v Aitom\Be\PageManager


5) injectory v presenterech a komponentách

Aktuálně se to snažíme psát tak, aby každý presenter, čí nette komponenta obasoval pouze jediný injector, který má v názvu název třídy a pro případné nechtěné přepsaní je metoda ochráněna pomocí final.

Příklad: final public function injectDefaultPresnter(..., ...);




--

-----------------------------
Ing. Radim Hašek

Aitom - dáváme webu nový
            rozměr

e-mail: radim...@aitom.cz

AITOM
Na Popelce 14, 150 00 Praha 5
Palachova 1742, 547 01 Náchod

www.aitom.cz | www.aitomcms.cz | www.aitomshop.cz

Reply all
Reply to author
Forward
0 new messages