webapp design

Un gen de problema care imi da tarcoale de ceva vreme este construirea si designul de mini-aplicatii web. Web pentru ca daca vreau sa dau altcuiva acces sa ruleze o bucata de cod, in 99% din cazuri o sa prefere sa fie via web. Oh well, se putea si mai rau.

Pe vremea cand se potcovea puricele cu 99 de oca la picior si invatam eu despre web, asta insemna CGI si presupunea sa iti scrii tu headerele HTTP si sa decodezi query-string si asa mai departe numai ca sa faci o singura pagina. Dupa aia au venit PHP dark ages unde nu mi-am facut problema sa scriu de la zero mai mult de 2-3 formulare si niste rapoarte.

Lately am inceput sa dau de frameworkurile astea post-web2.0 si gasesc o gramada de idei interesante. Recunosc ca nu m-am dat prea tare in vant nici dupa Ruby nici dupa Python, dar Rails, pe de o parte si specificatia WSGI, pe cealalta, fac totusi niste chestii dragute. Suficient de dragute astfel incat sa apara si in Perl niste module care sa promita zero-bullshit webapp development & deployment. unele chestii sunt suficient de cool ca am invatat sa ma joc cu ele practic peste noapte: Plack, Dancer, Mojolicious.

Partea frustranta e ca nu ma pricep sa fac design de aplicatii web. Nu, nu ma refer la designul vizual (stiu mai mult HTML si CSS decat mi-ar face vreodata placere sa recunosc iar nici la capitolul UI nu-s chiar nedus la scoala), ma refer la arhitectura. De exemplu cartile de Catalyst pe care le-am citit (care era copilul minune al Perl in materie de web frameworks pana anul trecut inainte de aparitia PSGI) pleaca de la premisa ca cititorul stie ce e aia MVC si mai ales cum sa-si muleze aplicatia pe patternul cu pricina. Eu sincer sa fiu n-am avut ocazia sa scriu cod in mediu asa structurat, iar problemele cu care am eu cel mai des de-a face (sa parsez, transform si editez datele altora) par a fi straine tuturor howto-urilor.

Si nu e doar problema de backend, ci si de interfata, mai exact cum imi fac layoutul url-urilor. REST e teh shit, foarte frumos, dar cum faci design la un API decent? Tot ce-am gasit pe net e un mare circlejerk cu design patterns si cu singletoane si factories si asa mai departe de ma face sa cred ca le-a luat tuturor Java mintile. Ma rog, so far am gasit ceva, dar e prea putin si se opreste imediat ce devine interesant.

Poate pls cineva sa-mi recomande ceva resurse (web sau print) care sa explice problemele astea asa mai ca pentru ingineri?

2 Responses to “webapp design”

  1. Jack Says:

    Nu-mi vine in minte decat sa te uiti pe un exemplu de aplicatie intr-un framework ce are la baza mvc. ( http://book.cakephp.org/view/1528/Blog )
    Acum nu-mi dau seama foarte bine ce exact iti lipseste din post. Daca-mi dai un exemplu concret poate reusesc sa te ajut mai mult.
    Bafta!

  2. maurice Says:

    http://library.nu/docs/41PNGZOF9T/Restful%20Web%20Services