Před pár lety jsem v tom něco dělal. Přišlo mi, že to co jiné frameworky řeší jednoduše, Nette řeší složitě a ještě si k tomu vymýšlí vlastní názvosloví. IMHO události, snippety, AppFormy a spoustu dalších blbostí aplikace jen komplikují a ztěžují testování. Proč potřebuji metody render, action, beforeRender atd??? Nestačila by jedna, tak jak je to všude jinde? Proč musí být formulář navázaný na presenter? Autor Nette IMHO trochu moc ujíždí na návrhových vzorech a OOP. Možná jen Nette pořádně neznám.
Snippety umožňují vytvořit SPA aniž by bylo nutné sklouznout k čistě javascriptové aplikaci.
Události souvisí s komponentovým modelem. U web aplikace poněkud neobvyklé, ale IMHO se to Davidovi podařilo navrhnout dost dobře.
AppForm je prostě Form. Moc nerozumím co ti na tom vadí.
Formulář nemusí být navázaný na presenter. Ale pokud presenter používáš a chceš formulář mít jako jednu z komponent, tak je na to předpřipravený právě v AppForm.
Moje zkušenost je naopak taková, že se David až nezdravě soustřeďuje na uživatelskou přívětivost. Něco jako jQuery styl v PHP. Snaží se nejdřív vymyslet api, které by bylo dobře použitelné, a pak se na to snaží naroubovat dobré techniky. DIC, Composer, MVP, Bezpečnost, knihovny před frameworkem, atd. Dobře to demonstruje třeba skutečnost, že v prvních verzí Nette bylo postaveno na SL, zatímco od cca 2.1 a vejš se masivně překopává na DI.