Jak je to s finálním Nette 1.0?
- Patrik Votoček
- Člen | 2221
Je to skoro 9 měsíců co se rozdělil vývoj Nette 0.9.x a 1.0. Nette 1.0 za tu dobu udělalo hodně velký skok dopředu (oproti 0.9.x). Osobně si nedokážu představit jaké to je vyvíjet pro 0.9.x (jsem jeden z těch, kteří do toho jdou po hlavě a používám noční verze Nette 1.0). No a to je právě ono existuje tady různě roztroušené co by se mělo zhruba tak pořešit do finální 1.0. Nicméně nikde není žádná Roadmap (na jednom místě sepsané co se musí vyřešit). Navíc poslední dobou se mě zdá že vývoj poněkud stagnuje (ano chápu že je okurková sezóna) a hlavně při pohledu na GitHub mě připadá jako kdyby byly zcela ignorované Issues a Pull requesty (kdyby se k tomu napsalo alespoň vyjádření ne takhle to není ono nebo tohle je ok jen to špatně používáte atd). Třeba co mě celkem zaráží je fakt že Neon Parser je v Nette už více jak 2 měsíce ale stále neexistuje driver pro config (aby se mohlo pořádně testovat). Takových „WTF“ je víc.
Taky se celkem zamýšlím jestli by nebylo lepší vydat Nette 1.0 klidně ochuzené o některé plánované (doposud neimplementované) featury. A ty naplánovat třeba pro budoucí 1.1 / 2.0 Nette.
Je tu někdo kdo sdílí stejný názor? Nebo někdo kdo k tomuto mému postoji má co říct?
Prosím berte tento post s rezervou Nette mám rád. A vím kolik všechno kolem něj zabere času. Taky vím že David není stroj a nemůže nonstop dělat jenom na Nette. Ale potřeboval jsem tohle ze sebe dostat a trochu rozvířit vody.
- Filip Procházka
- Moderator | 4668
hodilo by se tlačítko líbí se mi, ale takové které nesměřuje na FB:)
+1
- Majkl578
- Moderator | 1364
vrtak-cz napsal(a):
Je tu někdo kdo sdílí stejný názor? Nebo někdo kdo k tomuto mému postoji má co říct?
Já. Stagnace jsem si také všiml a celkem mě to mrzí. Kouknu-li se na impact graf, vidím oproti době před rokem méně změn, přičemž bugů, feature requestů a pull requestů přibývá…
- hrach
- Člen | 1838
když jsem se zmínil od stagnaci, bylo mi nepřímo odpovězeno, že jsou prázdniny…
to, že není release 1.0 mě netrápí, trápí mě, že tu lidi dělají
dobrou práci (fixování, pak pull requesty) a není k nim žádná odezva.
Mrzí mě to za ně…
- Ondřej Mirtes
- Člen | 1536
Co osobně vidím jako prioritu do 1.0:
- Hotovou dokumentaci. To je bezpodmínečně nutné, vydání 1.0 stable je velká událost, bude okolo toho velké haló, tiskovky v médiích, spousta lidí s učením určitě čeká na tento milník a nehotová dokumentace by určitě všechny zklamala.
- Nějaké řešení zavináčů. Vím, že to u současných snippetů nejde vyřešit z principiálních důvodů, ale nějaké řešení bez magie by to zkrátka chtělo. Třeba by si Nette mohlo při compile-time vyhledat hierarchii bloků, ve kterých jsou snippety a ty vyskočení z podmínek do nakešovaných šablon aplikovat bez asistence programátora. Ale možná přesně tohle automaticky nejde a je důvod, proč tahle věc stále nemá řešení :)
- Reakce (popření či oprava) všech issues na GitHubu.
Čemu bych přiřadil menší prioritu, ale do 1.0 by se to ještě mohlo vejít:
- Osamostatnění validátorů a filtrů od formulářů.
- Vyhození ConventionalRendereru – vykreslovat formuláře pomocí šablon.
- Podpora AJAX historie (tlačítka zpět/vpřed v prohlížeči) a stav aplikace za # v URL.
- Další slíbené javascriptové vychytávky od Dana Steigerwalda.
- Nová syntaxe pro konfigurační soubory.
- Přehodnocení třídy Nette\Environment s ohledem na dependency injection a minimalizování skrytých závislostí.
Co bych vůbec nedělal (nikdy):
- Nette je dobré v tom, že nepřikazuje podobu modelu. Takže si každý může zvolit, jestli bude bastlit volání dibi::query v nějakých statických metodách anebo vezme modelovou část aplikace vážně (protože je to to nejdůležitější) a použije třeba Doctrine 2. Tady bych místo pro nějaké nakázání jednotných modelů neviděl.
- Nevzpomínám si na další plány a návrhy, třeba to sem časem doplním.
A ještě k vývoji – celkem chápu, že David nechce přijmout commity obsahující nějaké zásadnější features, protože se mu třeba nelíbí (konec konců, pokud se někomu tyto features líbí, může si je do vlastní aplikace doplnit, pokud to jde čistě bez zásahu do frameworku). Ale např. na ty issues na GitHubu by se komunita vrhnout mohla, napsat a otestovat fixy, to půjde max. o několik řádků a David to rád přijme.
Zde vidím jako nevýhodu to, že Nette nemá testy v PHPUnitu, ale v nějakém bastlu, ve kterém se nevyznám a psalo by se mi v tom nepohodlně. Bojím se ty testy dokonce i spustit, těžko říct, co na mě vyskočí :o)
- Patrik Votoček
- Člen | 2221
Ondřej Mirtes napsal(a):
- Hotovou dokumentaci. To je bezpodmínečně nutné, vydání 1.0 stable je velká událost, bude okolo toho velké haló, tiskovky v médiích, spousta lidí s učením určitě čeká na tento milník a nehotová dokumentace by určitě všechny zklamala.
Souhlasím a mám v plánu zase nastartovat dění okolo dokumentace (chtěl jsem už předminulý víkend ale to jsem strávil 3dny nad prázdnou texareou a nevěděl jsem jak začít – no a minulý víkend jsem měl deadline). Nicméně tady celkem narážíme na absenci RoadMapy…
- Nette je dobré v tom, že nepřikazuje podobu modelu. Takže si každý může zvolit, jestli bude bastlit volání dibi::query v nějakých statických metodách anebo vezme modelovou část aplikace vážně (protože je to to nejdůležitější) a použije třeba Doctrine 2. Tady bych místo pro nějaké nakázání jednotných modelů neviděl.
S tímto souhlasím i nesouhlasím. Bylo by dobré kdyby existoval alespoň nějáký DataSource Interface, který by se dal používat napříč implementacemi různých modelových vrstev. A využívaly by ho addony.
A ještě k vývoji – celkem chápu, že David nechce přijmout commity obsahující nějaké zásadnější features, protože se mu třeba nelíbí (konec konců, pokud se někomu tyto features líbí, může si je do vlastní aplikace doplnit, pokud to jde čistě bez zásahu do frameworku). Ale např. na ty issues na GitHubu by se komunita vrhnout mohla, napsat a otestovat fixy, to půjde max. o několik řádků a David to rád přijme.
Toto taky chápu ale dokud to u nich není napsané tak je to na nic…
Zde vidím jako nevýhodu to, že Nette nemá testy v PHPUnitu, ale v nějakém bastlu, ve kterém se nevyznám a psalo by se mi v tom nepohodlně. Bojím se ty testy dokonce i spustit, těžko říct, co na mě vyskočí :o)
Jo tohle je pro mě taky celkem velká překážka… :-/
- Patrik Votoček
- Člen | 2221
poslední dobou se čím dál častěji setkávám s větou typu „Nette není MVC/MVP (jak o sobě tvrdí) nýbrž VC/VP“. Pokud se nad tím člověk zamyslí je to celkem i pravda. Ale pokud se nad tím člověk zamyslí více zjistí že to je strašná výhoda. Pokud ještě více zjisti že alespoň ten DataSource by bodl.
- Majkl578
- Moderator | 1364
Ondřej Mirtes napsal(a):
…
- Hotovou dokumentaci. To je bezpodmínečně nutné, vydání 1.0 stable je velká událost, bude okolo toho velké haló, tiskovky v médiích, spousta lidí s učením určitě čeká na tento milník a nehotová dokumentace by určitě všechny zklamala.
Tohle se dělá blbě ve chvíli kdy je plánováno n featur ke kterým není roadmap a implementace neexistuje. Pokud projdeš drafty stránek (např. Environment), pochopíš o čem mluvím („bude se toho hodně měnit“).
- Nějaké řešení zavináčů.
Rozhodně.
- Reakce (popření či oprava) všech issues na GitHubu.
To už jsem Davidovi nedávno naznačoval na Jabberu, ale bohužel. :S
- Osamostatnění validátorů a filtrů od formulářů.
- Vyhození ConventionalRendereru – vykreslovat formuláře pomocí šablon.
- Podpora AJAX historie (tlačítka zpět/vpřed v prohlížeči) a stav aplikace za # v URL.
- Další slíbené javascriptové vychytávky od Dana Steigerwalda.
- Nová syntaxe pro konfigurační soubory.
Určitě.
- Nette je dobré v tom, že nepřikazuje podobu modelu. Takže si každý může zvolit, jestli bude bastlit volání dibi::query v nějakých statických metodách anebo vezme modelovou část aplikace vážně (protože je to to nejdůležitější) a použije třeba Doctrine 2. Tady bych místo pro nějaké nakázání jednotných modelů neviděl.
Ještě nedávno jsem na to neměl názor, ale teď když používám Doctrine 2 to také vidím jako plus. Přecijen to M se při použití různých nástrojů liší.
A ještě k vývoji – celkem chápu, že David nechce přijmout commity obsahující nějaké zásadnější features, protože se mu třeba nelíbí (konec konců, pokud se někomu tyto features líbí, může si je do vlastní aplikace doplnit, pokud to jde čistě bez zásahu do frameworku). Ale např. na ty issues na GitHubu by se komunita vrhnout mohla, napsat a otestovat fixy, to půjde max. o několik řádků a David to rád přijme.
Z mé strany snaha byla – kanonizace flash messages a přenášení persistentních parametrů do error presenteru. Obojí bez odezvy.
Zde vidím jako nevýhodu to, že Nette nemá testy v PHPUnitu, ale v nějakém bastlu, ve kterém se nevyznám a psalo by se mi v tom nepohodlně. Bojím se ty testy dokonce i spustit, těžko říct, co na mě vyskočí :o)
Já se odvážil. Skončil jsem chybou ve spouštěcím scriptu.
- romansklenar
- Člen | 655
vrtak-cz napsal(a):
Ale pokud se nad tím člověk zamyslí více zjistí že to je strašná výhoda.
Můj názor: není to žádná výhoda. Co není pevně definováno, to dokáží PHPčkářích svou bujnou fantazijí zmrvit, zprznit, zprasit, atd… Co aplikace to unikát ohledně modelů a musíš studovat co v modelech (nejčastěji postavených nad dibi) jde nebo nejde a co se jak dělá…
Sám mám pár aplikací, kde dibi modelová vrstva (samozřejmě navzájem nekompatibilních) prošla nějakým vývojem (vesměs úplně špatnou cestou) až jsem došel k poslednímu stupínku – vše to zahodit. Jako světýlko naděje v dáli vyhlížím Doctrine 2, to že přibude ohlašovaná podpora ze strany frameworku, oficiální/doporučené postupy a best practices. Není potřeba nakazovat konkrétní podobu modelů či konkrétní ORM, ale nějaké komunitou ověřené a doporučené best practices jsou na místě, jinak je to pořád o vynalézání kola (ale co si budeme nalhávat, je málo takových co se o svůj postup podělí, ti ostatní mají asi pocit, že přišli na něco objevného). Až se tak stane, zase (podle mě) bude vývoj Nette aplikací příjemnější a systematičtější a nebudu se muset bát toho, co to tam ten člověk přede mnou vykouzlil.
- Ondřej Mirtes
- Člen | 1536
Roman: S tím jsem setkal, samozřejmě u vlastního kódu. Už tři měsíce děláme v Doctrine 2 a když se vracím ke starému kódu v dibi, vidím na první pohled ten chaos, neudržitelnost a nesystematičnost. Přijde mi ale jako nesmysl u vývojářů vynucovat nějakou ORM vrstvu, svazovalo by jim to ruce a prskali by. Někomu nemusí vyhovovat Doctrine a má pro své účely lepší nástroj. Univerzální vynucování něčeho nebastlířského asi nevymyslíme :o)
Dibi je skvělý nástroj a posloužil by dobře jako DBAL (tedy nejnižší vrstva modelu) v nějakém ORM, ale používat ho samostatně hned za controlerem nepřináší kvalitní kód.
Můžeme dělat osvětu, psát články a propagovat nebastlířské způsoby, jak programovat, ale to je vše, co s tím uděláme – kdo chce bastlit, cestu si najde vždycky.
- Patrik Votoček
- Člen | 2221
Jak jsem již napsal já to naopak vidím jako obrovskou výhodu. To že většina PHPkářů bastlí je fakt, ne které Modelová vrstva v Nette nic nezmění. Pokud bude chtít bastlit tak prostě bastlit bude a je mu to jedno. Aktuálně používám jako modelovou vrstvu v Nette Doctrine 2 ORM ale do budoucna mám(e) v plánu přejít na Doctrine ODM nicméně na v Nette komunitě narazíš na spoustu lidí, kteří ORM nechtějí (zatim jsem nenarazil na nikoho kdo by měl rozumný argument proč). Spousta z nich používá dibi (někteří NotORM) můžeš o tom pokecat třeba s HosipLan (kterého se snažíme už celkem dlouho převerbovat na Doctrine 2). Pokud argumentujete rychlostí tak jsem před pár dny udělal benchmark s pokračováním . Každý ať si z toho udělá svůj obrázek.
Taky jsem si jednu modelovou část nad dibi napsal ale, když jsem dospěl do téměř funkčního stavu tak jsem si uvědomil kolik práce mě ještě čeká při optimalizaci a tak jsem se na to vykašlal a přešel na Doctrine. (myslím že víš o čem mluvím)
- jakubkulhan
- Člen | 55
Ondřej Mirtes napsal(a):
- Nějaké řešení zavináčů. Vím, že to u současných snippetů nejde vyřešit z principiálních důvodů, ale nějaké řešení bez magie by to zkrátka chtělo. Třeba by si Nette mohlo při compile-time vyhledat hierarchii bloků, ve kterých jsou snippety a ty vyskočení z podmínek do nakešovaných šablon aplikovat bez asistence programátora. Ale možná přesně tohle automaticky nejde a je důvod, proč tahle věc stále nemá řešení :)
Myslím, že hlavní zábranou, proč na tento problém stále řešení nelze nalézt je fakt, že LatteFilter je jenom filter – vezme vstupní text, rozvine v něm makra a vrátí výstupní text. Naroubovat na tenhle přístup složitější logiku opravdu nepůjde.
Základní otázka je, používá někdo šablony jen tak, bez LatteFilteru? Jestli ne, setrvávat u toho, že se jedná jen o „hloupý“ makro procesor, je zlé. Je čas na to, aby se LatteFilter oprostil toho „Filter“. Pokud by se dalo pracovat se šablonou ve formě AST, ne textu, nebylo by složité provést v compile-time analýzu, kde je jaký snippet a podle toho se zařídit.
(BTW kde jsou všechna ta vlákna o zavináčích a snippetech? Nějak je nemůžu najít.)
- Inza
- Člen | 330
Cheché! A já jsem vám to o těch ORM říkal rovnou! A vy jste mi za to tehdy nadávali! Říkali jste, jak je Doctrine fail, jaký je to moloch. A teď sám Ondra uznává, že něco do sebe má…
Jinak já naprosto souhlasím s Romanem, že by měla být nějaká „normalizovaná“ cesta jak to dělat. A říkal jsem vám to už dávno! Ale také souhlasím s Ondrou, že nutit lidi k jednomu postupu má i své nevýhody…
Jestli se chcete inspirovat, mrkněte jak je to vyřešené v Rails 3 – defaultně s Rails 3 dostaneš Active Record, což je nečekaně ORM postavené na Active Record patternu, ale jestli chceš, tak můžeš použít řadu jiných podle jiných patternů (DataMapper, MonogoMapper, etc.).
Hlavní je, že způsob jakým se ORM propojuje se zbytkem Frameworku je takříkajíc „normalizován“ – což je podle mého to, co Nette chybí. Podle mě by se toto (způsob jak ORM s Nette propojit) mělo v Nette normalizovat a potom by se mělo vytvořit nějaké ORM nad dibi, nebo napsat nějaký defaultní Mapper nad Doctrine 2, whatever – prostě, aby byla nějaký výchozí volba – a pak je na každé, vývojáři, jak se rozhodne – jestli použije defaultní, nebo nějaký jiný, který někdo nahraje do extras, nebo jestli si napíše svůj vlastní. Navíc i ten způsob jak to propojení s ORM „normalizovat“ není třeba vymýšlet a kouknout se k Railsovým sousedům;-).
Z mého pohledu není nad čím dumat, stačí se rozhlédnout a inspirovat se. Což je mimochodem další věc, kterou vám říkám už dlouho – vidím, že to začínáte konečně chápat;-), mám radost – jen tak dál:-)
A ad lidi, co ORM nechtějí – MVC a ORM je IMHO související věc – největší benefity z toho mám když to používám obojí a když to dobře spolupracuje. Pro lidi, kteří ORM z nějakých důvodů nechtějí (tyto důvody jsou podle mého navíc velmi často způsobeny jejich ne zcela dostačující odbornou způsobilostí více než čímkoliv jiným), by mělo být možné to nějak používat i bez toho – ale rozhodně by to neměla být ta výchozí cesta… Alespoň pokud to Nette chce dotáhnout opravdu daleko, nejen v naší české kotlině;-)…
…a pak stačí vyřešit už jen integraci s různými unit test frameworky, někde existuje tuším nějaké to rake pro PHP, přidat trochu scaffoldingu, na google code jsem, tuším, viděl už i nějakou php obdobu gemů…
…a začne se to blížit frameworkovým kvalitám Rails;-) – ještě dotáhnout tu dokumentaci a rozšířit to v EN světě a možná to PHP nebude ještě tak nadobro ztracené…;-) – držím palce!
- JakubS
- Člen | 15
Nelze než souhlasit:
- Vývoj frameworku už není tak zrušující jak býval
- Roadmap je neveřejná
- Dokumentace stále na něco čeká (aktuálně na verzi 1.0)
- Issues a pull requesty jsou ignorovány :-(
Nebylo by lepší promluvit si o tom s Davidem osobně na např. na Poslední sobotě? IMHO podobná vlákna ješni nikdy nikam nic neposunula.
BTW není mi moc jasné proč je vývojová ALPHA verze NETTE nabízená jako první volba na stránce https://nette.org/cs/packages
- na1k
- Člen | 288
Vím jak může být těžké zavázat se k nějakým termínům.
Proto bych začal tím, aby David jasně rozhodl, které featury budou v 1.0 a které nemilosrdně odložit na později. Takhle totiž vývoj pořád visí v nějaké alfa verzi, příbývají feature requesty, bugy, na všem se tak nějak pracuje, ale milestones, bety, RC či snad dokonce stable verze jsou stále v nedohlednu.
Za Nette stojí silná komunita ochotná s vývojem pomáhat, ať už nápady nebo i samotným bušením kódu, ale v poslední době mám pocit, že se David do diskusí přestává zapojovat, až nakonec vyšumí. Navíc neřešené pull requesty a issues.
Davidovy práce si cením a chápu že si nechce do frameworku pouštět kdejaký balast, ale všeobecným embargem tomu taky nepomůže. Aby to nakonec nedošlo tak daleko, že se komunita, kterou se Nette tak chlubí, na nějaké přispívání vykašle, když stejně není žádná odezva :(
- David Grudl
- Nette Core | 8229
Stručně:
- do verze 1.0 plánuju řadu dosti zásadních změn a bez nich nemá smysl nic vydávat
- verze 1.0 může být vydána teprve ve chvíli, kdy bude obstojná dokumentace
- většinu vývoje v 1.0 jsem backportoval do 0.9, takže ty verze se zatím příliš neliší (v 1.0 chybí Collections, $oldLayoutMode, $oldModuleMode, deprecated metody a proměnné a naopak má výrazně lepší Debug).
Obšírněji:
Píšeš „nicméně nikde není žádná Roadmap … poslední dobou se mě zdá že vývoj poněkud stagnuje … při pohledu na GitHub mě připadá jako kdyby byly zcela ignorované Issues a Pull requesty … třeba co mě celkem zaráží je fakt že Neon Parser je v Nette už více jak 2 měsíce ale stále neexistuje driver“ ale ve skutečnosti to znamená „David nenapsal Roadmap … poslední dobou se mě zdá že David málo commituje do Nette … při pohledu na GitHub mě připadá jako kdyby David zcela ignoroval Issues a Pull requesty … třeba co mě celkem zaráží je fakt že Neon Parser David napsal už více jak před 2 měsíci ale stále nenapsal driver“. Mě třeba zase zaráží vývoj nové dokumentace který skončil tím, že jsem udělal osnovu. (sorry za invektivu)
Zdá se, že nejsem robot s 50hodinovým dnem, ale jen člověk.
Ale dobrá, mám takový návrh: udělám veřejný závazek, že beta verzi Nette 1.0 s implementací oněch zásadních změn vydám do 19. září 2010. Vy udělejte závazek, že do té doby bude na https://doc.nette.org kvalitní dokumentace. Jdete do toho?
- Patrik Votoček
- Člen | 2221
David Grudl napsal(a):
Píšeš … ale ve skutečnosti to znamená …
Ano skutečně to znamená to co jsi napsal. Ale ono to ani nic jiného znamenat nemůže (vzhledem k tomu jak je vše kolem Nette nastavené)
Mě třeba zase zaráží vývoj nové dokumentace který skončil tím, že jsem udělal osnovu. (sorry za invektivu)
Ano naprosto tomu rozumím a důvod(y) jsem doufám jasně napsal.
Zdá se, že nejsem robot s 50hodinovým dnem, ale jen člověk.
To jsem psal taky…
Ale dobrá, mám takový návrh: udělám veřejný závazek, že beta verzi Nette 1.0 s implementací oněch zásadních změn vydám do 19. září 2010. Vy udělejte závazek, že do té doby bude na https://doc.nette.org kvalitní dokumentace. Jdete do toho?
Do toho jdu i kdybych to měl napsat sám!!! (samozřejmě když někdo udělá korekci)
PS: šlo by někam napsat Roadmap těch změn?
- Majkl578
- Moderator | 1364
David Grudl napsal(a):
Ale dobrá, mám takový návrh: udělám veřejný závazek, že beta verzi Nette 1.0 s implementací oněch zásadních změn vydám do 19. září 2010. Vy udělejte závazek, že do té doby bude na https://doc.nette.org kvalitní dokumentace. Jdete do toho?
Pokud ty zásadní změny (které samozřejmě potřebují také zdokumentovat) nebudou vydány den předem, jdu do toho.
- Filip Procházka
- Moderator | 4668
Rád se zúčastním a nějakého skeletonu se taky ujmu,
slibuju to už taky nějakej ten pátek, tak bych to chtěl konečně
dodržet :)
- v6ak
- Člen | 206
K modelu: jsem na jednu stranu spíše pro volnost, na druhou stranu by
v dokumentaci mohly být minimálně nějaké odkazy na ORM, nejlépe
s nějakou řadou jak vybrat.
Nějaké menší sjednocení tu může být, byl bych pro, ostatně něco
takového má trošku Gridito a já hodlám přiložit (byť k tomu mám místy
menší výhrady). A určitě přiložím, jen notebook jsem nechal pár
kilometrů odtud, ale nejpozději cestou domů bych to mohl dopsat a doma (na
notebooku mi to EDGE přijde někdy až za trest) publikuji.
K zavináčům: Přiznám se, že pořádně nevím, jak to funguje, je k tomu něco aktuálního? Mohl bych asi ten problém analyzovat (EDIT: stejně jako jsem analyzoval problém hlášení čísel řádků u chyb v šablonách, třeba by byla přijata alespoň o trochu vřeleji), neučinil-li tak někdo již přede mnou.
Nebál bych se do budoucna pohlcení nějakých addonů jako třeba Gridito (měl bych argumenty Gridito vs. DataGrid), ale to bych do 1.0 asi nehonil.
S dokumentací asi moc nepomůžu, PHP již dnes pro sebe beru jako takovou vedlejší věc, byť zatím jedinou, kterou dnes dělám komerčně.
Editoval v6ak (6. 8. 2010 20:47)
- Patrik Votoček
- Člen | 2221
V zásadě se jedná asi hlavně o Nette\Environment
protože
to je aktuální Nette střed vesmíru.
- rarous
- Člen | 59
Pokud můžu doporučit, tak se raději nějaké „standardizaci modelu“ vyhněte obloukem. M v MVC ani MVP rozhodně neznamená Data Access. A ani DAL jako takový nemá cenu nějak lámat za univerzální rozhraní. Každý konkrétní přístup k datům má svá specifika.
Víc k tématu třeba tady: http://ayende.com/…ll-fail.aspx
- Honza Marek
- Člen | 1664
Jestli jsem to včera dobře pochopil, tak standardizací modelu David myslí to, že přepíše příklady z dibi pro Doctrine 2.
- Tharos
- Člen | 1030
rarous: Souhlasím, ale minimálně by se hodilo alespoň nabídnout a nastínit nějaká pojetí. Jde o to, že framework v současné době IMHO velmi dobře vede programátora ke správnému pojetí vrstev VP, ale už vůbec nijak nepomáhá programátorovi správně pojmout M vrstvu. A ta je zejména u rozsáhlejších projektů přeci jen klíčová.
Například ukázka CD collection v distribuci představuje snad úplně nejtriviálnější možné pojetí modelu – bez jakéhokoliv ošetření chyb, bez validace… Bylo by perfektní, kdyby součástí distribuce byl příklad právě nasazení řekněme Doctrine 2, a ideálně i v aplikaci s významným počtem entit (ne třeba se dvěma…) :).
Nette\Environment je možná středem Nette Vesmíru, ale osobně mi připadá, že by jím měla být spíše M vrstva.
Editoval Tharos (30. 8. 2010 0:02)
- newPOPE
- Člen | 648
@Tharos
v podstate si myslim nieco podobe (ak nie to iste).
Ono model je tazko standartizovat, ked som bol na PS v Ostrave tak tam niekto vyslovil nazor „Model musi fungovat ked je nad nim VP alebo konzola atd…“ pre mna je vsetko… od prace z datami, obrazkami (modelu predavam HttpUploadedFile) je to nieco ako keby som pisal aplikacii prikazy v cmd line a to v akej podobe sa prezentuju sa staraju VP.
V poslednej dobe som dostal myslienku pojat DB len ako ulozisko dat navrhnut
a nestarat sa (Doctrine som este nevidel). Vznikol u mna kviki (fici na
DibiFluent kde som si implementoval pre mna najvacsiu insipraciu
->setRowClass($class)
)
Editoval newPOPE (29. 8. 2010 22:01)
- David Grudl
- Nette Core | 8229
Honza Marek napsal(a):
Jestli jsem to včera dobře pochopil, tak standardizací modelu David myslí to, že přepíše příklady z dibi pro Doctrine 2.
Pochopil jsi správně :-)
- pekelnik
- Člen | 462
rarous napsal(a):
Pokud můžu doporučit, tak se raději nějaké „standardizaci modelu“ vyhněte obloukem. M v MVC ani MVP rozhodně neznamená Data Access. A ani DAL jako takový nemá cenu nějak lámat za univerzální rozhraní. Každý konkrétní přístup k datům má svá specifika.
Víc k tématu třeba tady: http://ayende.com/…ll-fail.aspx
+1
rarous napsal(a):
Proč by měl ukázky psát/přepisovat David? To si komunita neváží jeho času, který by mohl věnovat vývoji? ;)
+1
- rarous
- Člen | 59
IMO to do webovýho frameworku nepatří. Ale proč třeba neuděláte nette-contrib project, kde můžete podobné myšlenky rozvíjet, kam může commitovat kdokoli? Takový contrib project je běžnou praxí u většiny OSS projektů co znám a zdá se že to funkuje. Spousta věcí tam inkubovaných si časem našla cestu do core projectu.
- VeN
- Člen | 46
rarous napsal(a):
IMO to do webovýho frameworku nepatří. Ale proč třeba neuděláte nette-contrib project, kde můžete podobné myšlenky rozvíjet, kam může commitovat kdokoli? Takový contrib project je běžnou praxí u většiny OSS projektů co znám a zdá se že to funkuje. Spousta věcí tam inkubovaných si časem našla cestu do core projectu.
S touhle myšlenkou plně souhlasím. Nevím, zda jsou nyní rozšíření Nette nekde centralizovaná a má je někdo konkrétní na starosti, ale pokud nemá, tak by IMHO Nette prospělo, kdyby se to takto udělalo.
- newPOPE
- Člen | 648
MOzno by nebolo zle to mat naozaj pod addons/ORM kde by napr vzniklo par fast tutorialov ako kazdy nejak rochodit vid Panda's example pre Doctrine2
Napr
- Doctrine2
- ORmiom
- …
popr kazdy kto by si vytvoril nejaky novy a bol by schvaleny tak by sa tam mohol nachadzat, ked si k nemu napise tutorial.
A potom by si len prisiel a vybral si konkretne riesenie pre projekt.
Editoval newPOPE (1. 9. 2010 13:42)
- VeN
- Člen | 46
v6ak napsal(a):
Já jsem měl na mysli spíš jednotný repositář nad určitou částí kvalitních a užitečných Addonů.
Editoval VeN (1. 9. 2010 14:10)
- na1k
- Člen | 288
VeN, řekl bych, že addonů ještě není tolik, aby bylo potřeba to nějak řešit, např. systémem hodnocení nebo něčím podobným
Rozhodně se mi ale líbí myšlenka nette-contrib projektu, kde by se mohly představovat různé experimentální funkce a nápady. Spravovali by jej určení správcové a komunita by mohla fíčury testovat, feedbackovat, hodnotit a kdoví co ještě. Ve finále by u každého nápadu vykrystalizoval stupeň užitečnosti, ale taky to jak radikálně by změna zasáhla do frameworku a jestli je funkce stabilní. To celé dohromady by ukojilo experimentátory, kteří by si mohli jednoduše stáhnout „patche“ Nette s fíčurama které se do oficiální distribuce z různých důvodů nedostanou, a zároveň jako inspirace či rovnou zdroj hotových a vyzkoušených řešení pro Davida.
- mkoubik
- Člen | 728
K tomuhle dobře slouží tlačítko „fork“ na githubu. Akorát by bylo dobrý, kdyby se tady na fóru občas někdo zmínil, že implementoval zajímavou fíčuru a je k otestování v tom a tom repozitáři (ideálně jako branch). Prolejzat ručně všechny forky, jestli tam neni něco zajímavýho mě nebaví.
Editoval mkoubik (1. 9. 2010 15:17)
- na1k
- Člen | 288
mkoubik, jasně, fork, jenže ten ti neřekne (rozuměj úvodní readme je často odfláknuté) jaká fíčura je ve forku implementovaná navíc/jinak, jak s ní pracovat, na co dát pozor, komu to fungovalo a komu ne a podobně.
GitHub je prostě pořád jen skladiště souborů a pro informace a diskusi bych raději volil jiné místo – zpracované alespoň jako jsou teď addony. A ještě přihodím argument, proč vlastně nepoužít fórum, které se nabízí jako první – fíčura má sice své vlákno, ale to se dřív nebo později zaseká a hledat v něm nějakou informaci je vyloženě za trest. Je fakt, že experimentálních verzí asi nebude nijak moc, ale když ne pod-web, tak alespoň sekci v addonech by si zasloužily :)
- Patrik Votoček
- Člen | 2221
VeN napsal(a):
Já jsem měl na mysli spíš jednotný repositář nad určitou částí kvalitních a užitečných Addonů.
Přesně k tomuhle účelu existuje https://addons.nette.org do budoucna je plánována lepší správa (stávající WIKI řešení je nevyhovující – víme to). Je plánování i nějaké to hvězdičkování ale momentálné se síly soustředí na Nette 1.0 a DOC10. (David tohle doopravdy sliboval a nemá to prioritu)
Ad GItHub fork aktuální stav je takový že forky vznikají u věcí které mají přijít přímo do frameworku a většinou k nim existuje issue na githubu nebo vlákno takdy na fóru. Řekl bych že nette/komunita zatím nedospěla do fáze kdy budou vznikat nasaditelné forky s „přidanou“ hodnotou/funkcionalitou.
- rarous
- Člen | 59
Neměl jsem na mysli fork nette, to rozhodně ne, ale další třídy, plug-iny, rozhraní, které rozšiřují framework o další funkcionalitu, ale zároveň do něj nezasahují. Centrál ní repozitář má pro takové věci tu výhodu, že se nemusíte probírat „stovkou“ forků a hledat, kde je co zajímavého.
- Majkl578
- Moderator | 1364
Ahoj.
Vypadá to, že došlo na to čeho jsem se obával. Je 11. září, dokumentace má být hotova 19. (příp. v den představení Nette – 23./24. září) a většina z očekávaných novinek zůstává utajována veřejnosti a co hůř, i lidem, kteří je mají dokumentovat. Myslím si, že ti co dokumentovat chtějí počítali s postupným vydáváním oněch změn… Přijde mi to jako rána pod pás, co se naší dohody týče. :(
Ptám se tedy: Jak máme zdokumentovat to, co jsme nikdy neviděli a
vpodstatě o tom ani nic nevíme? Příkladem budiž anotace
@ajax
, @allowed
a @role
, změny
formulářů (definice, validace, renderování), NEON, nová makra
v šablonách, routy, AJAX (snippety, změny URL) a další.
- David Grudl
- Nette Core | 8229
A kdo po tobě chtěl dokumentovat novinky? To je přece nesmysl. Psal jsem, kterým tématům se vyhnout, protože se budou měnit, vše ostatní je možné dokumentovat. A novinky rád zdokumentuju sám.
- Patrik Votoček
- Člen | 2221
Však David sám řekl že se má dokumentovat aktuální stav a že novinky zanese sám.
EDIT: moc dlouho mě tohle okno vyselo otevřené. (proto je tenhle komentář v podstatě zbytečný)
- Vyki
- Člen | 388
Na časové údaje ohledně čehokoli kolem Nette se poslední dobou nedá spolehnout ani přibližně. Možná proto, že všechna data uvolnění nové dokumentace i Nette 2.0 už jsou dávno passé, nenajdeš žádná aktuální. Pořád lepší použít ALFU než to bastlit po staru bez Nette. Enjoy ALFA!
Editoval Vyki (28. 1. 2011 18:22)