reprezinta cea de-a cincea mare revizuire a
standardului HTML, care este in curs de dezvoltare (draft). Reprezinta un
limbaj unic care poate fi scris atat in sintaxa HTML cat si in XML, ideal atat
pentru browsere cat si pentru parsere. De asemenea, s-a luat in calcul si
posibilitatea rularii noilor aplicatii web pe platforme mobile, smartphone-uri
si tablete.
Organizatia care a infiintat noul standard in 2004 este WHATWG (Web Hypertext Application Technology Working Group). Dintre organizatiile care sustin standardul se regasesc producatorii de browsere Firefox, Opera, dar si gigantii Google, Apple,
Adobe sau Facebook. Cu toate ca este
sustinut de multe organizatii, HTML5 nu se grabeste sa fie definitivat,
termenul preconizat fiind in iulie 2014.
HTML5 contine o serie de elemente de sintaxa in plus fata de versiunea
anterioara, dintre care cele mai remarcabile par a fi <audio> si
<video>. Acestea ar putea inlocui plugin-urile dedicate (Flash,
Silverlight, etc) si astfel ar putea imbunatati performantele (mai putine
resurse consumate, securitate mai buna). De asemenea, elementul <canvas>
va permite ca motorul browser-ului sa randeze grafica in timp real, pentru
integrarea jocurilor fara a mai fi nevoie de Flash.
In total, HTML5 are in jur de 100 de specificatii noi si este compatibil
cu documentele HTML4 si XHTML1 publicate pe internet, dar necompatibil cu
functiile SGML are HTML4. In schimb,
suporta elemente de MathML si SVG.
Dintre elementele noi (tag-uri) cele mai importante par a fi section,
article, aside, header, footer, figure, video/audio, track, embed, mark,
progress, meter, time, ruby, canvas, command, details, datalist, keygen, output
si altele. De exemplu, noul element numit <article> specifica un continut
independent de restul paginii care va putea fi distribuit independent de restul
sitului, iar <ruby> specifica o adnotare ruby, folosite pentru tipografia
tarilor din Asia de Est pentru a le arata pronuntarea.
Pe langa elemente noi, s-au adaugat si atribute noi unor elemente deja
existente. De exemplu, pentru <input> exista in plus atributele autocomplete,
min, max, multiple, pattern, iar pentru <textarea> apar maxlength,
wrap sau dirname. <html> va putea lua ca atribut nou manifest,
ceea ce inseamna specificarea locatiei unde se afla o lista a resurselor pe
care browser-ul le va cache-ui pentru accese offline ulterioare – acest atribut
trebuie specificat in fiecare pagina html a aplicatiei web care se doreste a fi
pastrata in cache.
Unele atribute de elemente pot avea acum si alte valori, cum este cazul
lui <input> care primeste pentru atributul type valorile: search,
tell, url, email, datetime, date, month, week, time, datetime-local, number,
range sau color.
Pe langa adaugiri de sintaxa, s-au efectuat si modificari (un exemplu ar
fi ca <img> nu poate primi ca valori ale atributelor width si height
procente) dar si eliminari de sintaxa. S-a considerat ca unele dintre
elementele absente au un efect pur de imagine (prezentare) si astfel ele pot fi
setate prin CSS: basefont, big, center, font, strike, etc. Alte elemente
nu apar deoarece se crede ca ar ameninta uzabilitatea si accesibilitatea: frame,
frameset, noframes, iar altele au fost folosite prea putin de-a
lungul timpului: <acronym> (creeaza confuzii), <applet>
(inlocuit cu object), <dir>
(invechit, se foloseste <ul>). Dintre atributele des folosite,
surprinzator, unele au fost eliminate deoarece functionalitatea poate fi
realizata direct din CSS: align, background (<body>), bgcolor,
border, cellpadding, cellspacing, frame (<table>), scrolling
(<iframe>) si altele.
Pe langa specificarea elementelor de markup noi, HTML5 specifica si
API-uri de scripting. API-uri noi care apar sunt: aplicatii web offline, drag
and drop, editarea documentelor, managementul istoricului web, elemental canvas
pentru desenare 2D, stocare web (web storage – un framework de stocare
de perechi cheie-valoare cu un comportament similar cu cookies, dar cu o
capacitate mai mare de stocare si API imbunatatit), etc. GeoLocation este o
interfata prin care un site poate identifica locatia calculatorului, fara
ajutorul altui plugin.
Web workers este un alt concept nou introdus de HTML5 care este o
functie de procesare in fundal ce se va ocupa simulan de scripturile sitului si
de aplicatiile web in thread-uri separate. In mod normal, in browsere opera un
singur thread care executa tot codul Javascript, dar prin web workers, viteza
si timpul de raspuns vor fi imbunatatiti prin separarea partilor CPU-intensive
de codul pentru interfata
utilizatorului.
Noua versiune HTML5 pare sa aduca imbunatatiri pe partea de securitate,
prin adaugarea unui sandbox la iframe si permiterea in mod limitat a
executarii scripturilor sau a cookie-urilor.
Personal, sunt foarte atrasa de ideea de HTML5 si cred, conform
specificatiilor, ca noul standard va aduce imbunatatiri substantiale atat la
nivel vizual, cat si din punct de vedere al performantei. Mi se pare excelenta
ideea separarii pe thread-uri a interfetei cu utilizatorul si a “activitatii din spate” deoarece in viata de
zi cu zi, multe aplicatii web crapa sau produc intarzieri deoarece toate
task-urile sunt procesate laolalta, in acelasi thread. De asemenea, unui
utilizator ii va fi mult mai usor cu HTML5 decat sa fie nevoit sa instaleze
plugin-uri pentru orice fel de continut multimedia (Flash, Silverlight,
ActiveX, etc). Cu toate acestea, se pare ca Flash nu va fi uitat prea curand
deoarece HTML5 nu poate reda continut HD. Nu vad o neaparata nevoie de un API
pentru accesarea aplicatiilor web offline, in conditiile in care aproape toti
utilizatorii au acces la internet non-stop, dar poate ca pentru rapiditate este
mai convenabil ca pagina sa fie incarcata de pe statia locala.
Referinte:
Niciun comentariu:
Trimiteți un comentariu