MEAN rubrika: Programování: JavaScript
Niekto kto robi do MEAN stacku a mohol by ma zasvatit do jeho tajov ??
Preskocim uvodni fraze, jakoze se jedna of fullstack kompletne v JS. Z meho pohledu je MEAN dobry zpusob jak se UI developer dostane k funkcnimu serverovemu kodu, pricemz naroky na znalost NODE, EXPRESS a/nebo MONGOdb jsou minimalni. Pod buzzwordem MEAN se soucasnosti tvori base reusable kodu, ktery by mel pomahat vytvaret aplikace rychleji a nepsat stejne veci porad dokola (podobne jako sveho casu RUBY). MEAN v soucasnosti tlaci dva produkcni tymy MEAN.io a MEAN.org. Na nejnizsi urovni jsou si kody docela podobne (myslim ze se forkli ze stejneho jadra), ale jejich pristup se trochu lisi. Jedni rezou problem po radkach druzi po sloupcich.
mean.org je postaven na generatoru yeoman/yo, ktery ti pomuze vygenrovat scaffold kodu, ktery si bude vzajeme povidat, navzajem se injektovat a dedit po sobe. Vsechno ostatni je ale uz na tobe.
mean.io jde o kousek dal. Ma vlastni build/cli rozhrani (jeste nad GRUNTem) a postupne vytvari knihovnu hotovych kompletnich modulu (packages), ktere aplikaci pridavaji funkcionalitu napric CRUD moduly (admin, tokens, internacionalizace, sockets). Na jednu stranu je to vyhoda protoze dostanes do ruky pomerne dobre optimalizovany (plne integrovany) kod se specifickou funkcionalitou, na druhe strane mi trochu chybi yo volnost vytvorit si v ramci modulu novy controller, servisu nebo cokoliv.
Ani jedna implementace MEAN neni idiot proof, neda se vysvetlit jednim postem na foru a budes si di toho kodu muset na nejakou dobu zalehnout abys pochopil o co tam jde. Rozhodne bys mel umet alespon cist Angular, vedet jak funguji moduly, dependency injections protoze jinak se v tom ztratis. Obe implementace organizuji kod podle konecne funkce. Kdyz zakladas funkcionalitu zakaznici tak to zalozi subfolder "zakaznici" a veskery souvisejici kod (klient i server) je ulozen uvnitr. Se zbytkem aplikace si to povida pomoci application-wide sluzeb (identifikace, i18n, atp).
Jinak te ceka podobny zazitek jako se samotnym Angularem. Nejprve obrovska euforie, za den vygenerujes 80% potrebneho kodu a dalsi pulrok ho budes vylepsovat, nadavat a resit proc je to udelano zrovna takhle :)
Pokud jsi do MEAN jeste neinvestoval, urcite bys mel zvazit jeste dalsi alternativy. Prinejmensim Sails.js + Angular (ktery podle me lepe rozdeluje logiku mezi klienta a server ) stoji za zvazeni. Jinak reseni Mongo, Whatever, Angular, Node existuje nekolik. Nakolik se ale vyplati investovat do neceho jineho nez defacto Node standardu Express je otazka. Express zna kazdy a kdyz ti vypadne backendovy clen tymu, snadneji ho nahradis.
Pro plný přístup na Devel.cz se prosím přihlaste:
Nebo se přihlaste jménem a heslem:
Komentáře