W web-dev masz zawsze do czynienia z banalnym flow'em: zaczyna sie od request'u, konczy sie na response'ie.
Tylko jeśli robisz front pod crudy, i ten front nie ma w sobie żadnej logiki.
Inaczej byłoby w sytuacji gdybyś robił np Edytor 3D online, albo np taki program jak Google Docs albo Google Slides.
Trzymanie sie zasad przyjetych na poczatku jest kluczem.
Mało Agile'owej podejście.
To jaka jest jakosc tych zasad to juz loteria i odpowiedzialnosc spada na tego ktory je ustalil i innego ktory zatwierdzil te ustalenia. Produkt jest dla tego kto za niego placi, a nie dla dania mozliwosci rozwoju kazdemu "geniuszowi" ktory pojawia sie w miedzyczsie w projekcie.
Tak, produkt jest dla tego kto za niego płaci; ale utrzymanie go w stanie zdolnym do zmian jest kluczem żeby produkt był utrzymywalnym.
Wystawiasz klientowi faktury wiec dostarcz mu taki kod jaki od Ciebie wymaga. Czytelny, jednolity, rozszerzalny, latwy w utrzymaniu i do ewentualnego przepisania.
Klient nie wymaga zadnego kodu od Ciebie - wymaga działającego produktu; to w jaki sposób osiągniesz ten kod, to kwestia programisty.
Naduzywania coraz bardziej zawilej terminologii (ktora i tak za 5-10 lat nikt sie nie bedzie przejmowal) i robienie z tego dev'o woo-doo to jest najwiekszy kant w branzy IT.
Pełna zgoda. Za to mógłbym dać +2 (jakby się dało).
@markone_dev: Może powinienem tylko podpowiedzieć, że nawet w takiej "wertykalnej" strukturze, gdzie dzielisz aplikację na takie kawałki, z których każda ma "swoją" persystencję, kontrollery i inne rzeczy - to nadal to nie wyklucza podejścia o którym mówili przedmówcy - można zastosować zarówno podzielenie horyzontalne jak i wertykalne na raz, i nic złego w tym nie ma. Więc to nie jest tak że musisz wybrać albo albo.