Spustili jsme - AceBLOG

Dnešním dnem jsme spustili firemní blog. Tedy AceBLOG. To znamená že mé články týkající se PHP, Nette a podobně budou vycházet tam. A zde se začnou v brzké době objevovat spíše články o NodeJS.

Dnešním dnem jsme spustili firemní blog. Tedy AceBLOG. To znamená že mé články týkající se PHP, Nette a podobně budou vycházet tam. A zde se začnou v brzké době objevovat spíše články o NodeJS.
V předchozích dvou článcích jsem se snažil dopátrat, jak kdo implementujete modelovou Service vrstvu pro Doctrine ORM 2 v Nette Frameworku. Dlouhodobě totiž hledám ideální řešení, protože jsem se svým stávajícím lehce nespokojen. Ono funguje a je dokonce i celkem ohebné a použitelné ve spoustě případů a situací. Nicméně stále mám pocit, že je tam něco špatně a tak jsem se vydal pátrat, co to je.
V předchozím článku jsem řešil, zda o data žádat přímo repository, či zda žádat service. V tomto článku bych rád otevřel diskusi nad dalším „problémem“, který řeším.
Když jsem se rozhodoval , jakou knihovnu použít pro modelovou část Nelly, byla jednou z možností Doctrine ORM. Původně jsem si Doctrine ORM 2 nevybral a začal jsem psát vlastní ORM, postavené nad dibi. Po přibližně měsíční práci jsem dospěl do fáze, kdy to nějak fungovalo, ale čekala mě hromada další práce, jako například optimalizace, celkový refaktoring a hlavně otestování v praxi. V tu dobu jsem své předchozí stanovisko nepoužít Doctrine znovu přehodnotil a začal ji používat.
V těchto dnech tomu bude rok, co používám Doctrine. Je to výborná knihovna a autoři na ní odvedli velký kus práce. Nicméně ani Doctrine není kompletní řešení modelové vrstvy aplikace. Schází jí totiž poslední „kostička do skládačky“. Tou je modelová Service vrstva.
Jak řešíte ukládání dat s ověřením unikátnosti záznamu?