Ce parere aveti despre cursul de Interfete Evoluate de anul acesta ?(tematica curs, laboratoare)

luni, 3 decembrie 2007

Tema 3 Autocomplete - varianta "complexa"

In urma experienta temei 3 de javascript - recent terminate , pot sa spun cu mana pe inima ca cei care au propus impartirea in varianta simpla si varianta complexa probabil ca au vrut sa rada de noi. In cele ce urmeaza o sa detaliez aceasta idee.
Pentru a face aceasta tema am adoptat, ca orice inginer in devenire :P, o abordare incrementala. Auzind de la laboranti ca "varianta simpla este inclusa in cea complicata" am inceput prin a rezolva varianta simpla.
Vrand sa lucrez in eclipse, un IDE deja cunoscut si foarte usor de folosit, am downloadat un plugin pentru editarea de javascript - JSEclipse. A trebuit sa ma inregistrez la Adobe ca sa dwl acest plugin :(, instalarea a mers ok , pana la urma tot cu download managerul din eclipse am instalat :P ca mi-era mai usor. Pluginul nu este unul tocmai stralucit, raporatarea erorilor este foarte slaba, cateodata te induce in eroare, autocomplet-ul nu este prea util, avand in vedere ca tipul variabilelor este "on the fly".

Varianta simpla - durere de cap :(
Am citit tutorialul de pe w3schools de JavaScript si am inceput sa rezolv micile task-uri ce alcatuiau tema fara a tine cont de Ajax si aici au inceput problemele.
Am zis sa plec de la o abordare simplista si asa am facut separat un text box in care sa editezi titlul articolului si un select cu lista de autocomplete. Din pacate lucrurile nu au fost asa de simple deoarece tot ce sa gasea pe net erau aceleasi exemple standard, iar daca vroiai sa faci ceva mai altfel specificatiile pentru o anumita chestie-obiect in speta, trebuiau cautate bine. A trebuit sa citesc si despre HTML DOM, altfel nu aveam cum sa generez dinamic lista de autocomplete. Un exemplu util de HTML DOM aici .
In cele din urma, cu multe chinuri si cu ajutorul try catch-urilor am reusit sa fac pagina sa functioneze. (Am uitat sa zic de erorile foarte sugestive obtinute - "Unspecified error").
Urmatoarea etapa era sa fac afiserea listei de autocomplete sa semene cu cea din google suggest.
Aici am dat peste diverse solutii folosind HTML5.0 despre care nu am gasit o documentatie buna, doar exemple si un articol sumar . Oricum devenea foarte clar ca ceva trebuie drastic schimbat in abordarea temei ca asa nu mai merge.

Varianta cu Ajax - :D
In cele din urma am avut divina inspiratie sa citesc si tutorialul de Ajax. Aici am descoperit cu stupoare implementarea temei mele, intr-o varianta foarte simpla care NU folosea Javascript aproape deloc :D si care reusea sa faca site-ul sa semene ca cel de la google. Asa ca am sters cu "buretele" (aka delete ) tot ce scrisesem pana acum, si am copiat exemplele din tutorial. Din fericire site-ul ales de mine xhost.ro are suport pentru baze de date mySql si php, asa ca a functionat sa testez acolo si nu a trebuit local sa - mi instalez alte programe.
A trebuit desigur sa ma mai documentez despre php si obiectul de popup pentru a face sa functioneze tema. Un articol cu exemple bune referitoare la folosirea Popup Object.

In concluzie va sfatuiesc sa faceti varianta cu Ajax in conditiile in care aveti la dispozitie un server apache/.. cu php si mysql , deorece este mai simpla abordarea.

Un comentariu:

Cosmin spunea...

Ai uitat sa spui ca ai avut si niste ajutor :P.

Oricum, varianta "complexa" nu e cu mult mai mare decat cea "simpla" asa ca va recomand sa o faceti pe prima.

Pentru detalii despre implementare, vedeti tema mea si a Mihaelei. Detalii pe FTP (si pe site, dupa expirarea termenului).

Ce parere aveti despre tehnologia Ajax ?

 
Director-Web.net