Exceptii java - Prezentare si Best Practice
02:19 | Author: Sorin Moise

1. Ce sunt exceptiile?

Exceptiile pot fi descrise ca evenimente ce apar in timpul rularii unui program, si care cauzeaza intreruperea derularii normale a instructiunilor acelui program.

Principala lor propietate este capabilitatea de a se propaga prin lantul de apeluri ale functiilor, dupa cum putem vedea si in ilustratia de mai jos:

2. Tipuri de exceptii

Exceptiile se pot clasifica in 3 mari categorii:
  1. Exceptii “checked” -> Acestea trebuie tratate explicit
  2. Erori -> Nu sunt tratate explicit si de obicei semnifica un eveniment fatal pentru un program (OutOfMemory, NoClassDefFound)
  3. Exceptii “runtime” -> Nu trebuie tratate explicit si reprezinta, in majoritatea cazurilor, scapari in logica programatorului
3. Tratarea exceptiilor

Java ofera posibilitatea de tratare a exceptiilor prin includerea codului in blocuri de tip try, catch si finally.

Cititi in continuare...

Proiectarea eficienta a unei interfete Web
11:46 | Author: Sorin Moise

Interfetele grafice au fost proiectate pentru a oferi utilizatorilor un grad mai mare de control asupra computerelor personale. Utilizatorii actuali se asteapta la un anumit nivel de calitate al design-ului unei interfete grafice, incluzand si design-ul unei pagini Web. Scopul este de a proiecta o interfata Web ce adapteaza anumite tehnologii pentru a indeplini cerintele utilizatorilor si care nu ii forteaza pe acestia sa se conformeze unei interfete ce le ofera obstacole inutile in sarcinile triviale.

O greseala des intalnita in procesul de dezvoltare este uitarea nivelului de cunostinte ale utilizatorului final. Greseala ce se reflecta in documentatie, dar in special in rezultatul final al interfetei ce poate confrunta utilizatorul cu diverse scenarii in care acesta se simte „pierdut”, nedispunand de informatiile necesare pentru a merge mai departe.

Aici intervine nevoia de a realiza o cercetare informata asupra grupului de persoane caruia i se adreseaza interfata, fiind imposibila crearea unei interfete reusite pentru un utilizator necunoscut, caruia nu-i intelegem nevoile. Sunt necesare simulari ale diverselor scenarii de utilizare de catre grupuri diferite de utilizatori (experimentati/neexperimentati) si pe baza rezultatelor imbunatatit design-ul.

Interactiune controlata de utilizator

Ca si dezvoltatori suntem tentati sa controlam interactiunea utilizatorului cu aplicatiia noastra cat mai mult posibil. Gresit! Aceasta abordare ne poate face viata noastra mai usoara dar utilizatorii se vor simti ingraditi de nevoia de a urma mereu aceeasi pasi pentru a-si indeplini scopul. Daca ajungeti sa depuneti efort considerabil in a dezactiva diverse controale in functie de stadiul curent in care se afla aplicatia, atunci este nevoie de o regandire a design-ului interfetei. Utilizatorul nu doreste sa se simta controlat, iar aplicatia trebuia sa fie dirijata de evenimente initiate de utilizator in loc de a avea aplicatia ca dictator al urmatoarelor evenimente. Proiectarea unei interfete ce poate fi accesata in modalitati neprevazute poate fi dificila (chiar descurajant) dar ii va oferi utilizatorului un simt mai mare de control si noua, dezvoltatorilor, satisfactia de a fi creat o interfata cu adevarat dinamica.

Elemente de navigare bine definite

Principalul mod in care utilizatorii interactioneaza cu paginile Web este prin accesare de link-uri http intre pagini. De aici se naste o mare problema a interfetelor Web ce nu ofera o localizare clara in cadrul continutului local.

Cititi in continuare...

RSS
15:53 | Author: vladul

Web 2.0 este o platforma web ce se bazeaza pe standarde ca RSS, XML, API-uri si pe utilitare ca bloggingul, podcastingul precum si alte servicii.

Web 2.0 se bazeaza pe incredere, pe o noua generatie de dezvoltatori, pe existenta OpenSource, pe broadband, pe dorinta de conversatie a oamenilor si construirea unei retele sociale online. Acest curent presupune implicarea tuturor si nu organizarea centralizata. Cei care conduc acest trend sunt milioanele de utilizatori de pe tot globul.

Pentru mai multe detalii puteti citi in intregime articolul pe http://interfete-web.trei.ro


GWT - Abordare noua in programarea web
02:12 | Author: Sorin Moise

Inca de la aparitia tehnologiei Web 2.0, cu numeroasele sale imbunatatiri in materie de interfata prezentata utilizatorului, programatorii web au incercat sa ofere o experienta cat mai naturala si fluenta in interactiunea cu site-urile create de ei.

In timp ce pentru unele site-uri un aspect semi-static este suficient (ca exemplu avem template-urile folosite pentru blog-uri), exista o nisa in crestere a pietei care cere din partea unui site functionalitate ce se apropie de cea a unei aplicatii desktop, dar care pastreaza toate avantajele unei aplicatii gazduite online (cel mai important fiind, evident, accesibilitatea).

Ca posibila solutie pentru o interfata dinamica, gen desktop, a aparut tehnologia Ajax in combinatie cu JavaScript. Astfel, s-au nascut aplicatii ce au doar o pagina principala iar continutul este accesat si randat dinamic prin cereri asincrone catre server si modificarea elementelor DOM din pagina, cu JavaScript, pe baza datelor primite ca raspunsul la cererea asincrona.

Totusi, desi aceste tehnologii pot fi folosite pentru a realiza aplicatii web desktop-like, ele sunt greu de implementat datorita cantitatii mari de JavaScript necesara pe partea de client. Aplicatiile mari scrise in acest limbaj de scripting sunt foarte greu de creat dar si de intretinut. Folosirea conceptului de namespace in JavaScript + API-urile precum EXTJS sau SmartClient au usurat procesul de dezvoltare, dar tot prezinta un numar mare de limitari, in special din punctul de vedere al procesului de debuging.

Aici intervine Google Web Toolkit (GWT), tehnologie introdusa de Google pentru a usura dezvoltarea aplicatiilor web dinamice, feature-rich, si care este deja folosite in cateva aplicatii Google, dintre cate cea mai notabila este Gmail.



Cititi in continuare...

Totul are un inceput
08:27 | Author: Echipa IE
Deadline-ul pentru prima etapa a proiectului se apropie si ne-am decis sa ne mobilizam ca si echipa in crearea site-ului si al blog-ului. Desi am inceput un pic cam tarziu avem incredere ca vom reusi sa progresam rapid. Ca in multe cazuri inceputul este mai greu :)

In urma scurtelor discutii dintre membrii echipei, in care s-au vehiculat diverse idei despre acest proiect, am stabilit in cele din urma prima intalnire serioasa in care s-au luat deciziile necesare demararii proiectului. S-a stabilit layout-ul de inceput al site-ului si principalele obiective ce trebuiesc indeplinite pentru prima etapa.

Un scurt rezumat al deciziilor luate:
  • Cosmin se va ocupa de modificarea template-ului de site pentru a se preta nevoilor noastre si va asigura inscrierea acestuia pe Trafic.ro.
  • Vlad va oferi identitatea vizuala a site-ului prin crearea unui banner in Flash. Tot el se va ocupa de gasirea unor elmente de "fun" ce vor fi adaugate in site in speranta de a genera un trafic mai mare.
  • Sorin are responsabilitatea de a crea blog-ul asociat site-ului si customizarea acestuia pentru a fi cat mai strans legat de continutul site-ului si identitatea acesteia. Tot el se va ocupa de post-ul introductiv de pe blog :)
  • Toti membrii echipei vor contribui cu cel putin un articol relevant despre o tehnologie web pentru a putea adauga continut pe site.
Deoarce acesta este doar etapa I a proiectului nu am pus accent pe atragere unui trafic substantial, acesta ramanand ca obiectiv principal pentru partea II. In urma aceastei prime etape dorim sa avem definitivate doar elmentele principale ale site-ului si blog-ului.

Pentru echipa noastra experienta de creare a unui blog si popularizarea unui site este noua, dar speram ca vom reusi sa ne depasim asteptarile si sa invatam cateva lucruri utile.
Hello!
13:45 | Author: Echipa IE
Acesta va fi blogul oficial al echipei de Interfete Evoluate ce are ca membrii pe Dinu Vlad, Moise Sorin si Tambrea Constantin.

Misiunea noastra este de a va aduce o perspectiva noua si utila asupra celor mai noi si raspandite tehnologii Web.

Look forward to it!