Firefox 4 Perspectiva dezvoltatorului

Chiar și pe Internet Explorer 9 ajunge la cea mai recenta iterare a Firefox 4. Versiunea a fost un succes până acum, cu peste 7 milioane de descărcări în primele 24 de ore și peste 40 de milioane până în prezent. Astăzi, aș dori să vă ofer o privire de ansamblu rapidă a schimbărilor din perspectiva unui dezvoltator - voi trece peste noul interfață utilizator și alte caracteristici whizbang.


Mai multe HTML5

Un nou motor de redare, Gecko 2.0, se află sub capota lui Firefox 4.

Un nou motor de redare, Gecko 2.0, se află sub capota lui Firefox 4. În cea mai mare parte, după cum era de așteptat, oferă un mare sprijin dezvoltării web standardizate. De asemenea, la joc este un nou parser HTML5 care definește modul în care codul dvs. HTML este transformat într-o pagină Web.

Ca rezultat, obțineți performanțe îmbunătățite, de la innerHTML solicită, în special, capacitatea de a include SVG în linie în codul dvs. și stabilitatea generală și de reacție datorită algoritmului de parsing care se execută pe propriul procesor.

Mai multe îmbunătățiri din punctul de vedere al dezvoltării HTML5 sunt suportul mai matur oferit pentru formularele HTML5 și API-ul audio. Suportul pentru elementele și atributele de marcare mai noi va duce la scăderea semnificativă a codului JavaScript pe care îl veți scrie pentru a oferi o funcționalitate echivalentă. Gândiți-vă la o validare mai ușoară - elementele formularului dvs. vor necesita JavaScript de la zero pentru a lipi regulile de validare.


WebGL

WebGL este un standard care se bazează pe OpenGL ES, care vă permite să efectuați redarea 3D pe web.

Suportul WebGL a fost destul de născut în versiunile anterioare ale Firefox - numai testul de noapte construiește suportul pentru această tehnologie. Firefox 4 este livrat cu suport complet pentru platformă.

Dacă vă întrebați, WebGL este un standard care se bazează pe OpenGL ES, care vă permite să efectuați redarea 3D și alte manipulări asortate prin elementul de panza. API-ul în sine este mult mai scăzut decât v-ați afla, oferindu-vă o flexibilitate și o putere enormă. Dacă se poate face ceva pe un desktop, o puteți face și pe web!


Accelerarea hardware

Reducem volumul de lucru pe CPU-urile cu scopuri generale, permițând mult mai multe GPU-uri paralele și capabile să se ocupe de anumite calcule.

Accelerarea hardware este descărcarea sarcinilor care sunt de obicei manevrate de către software-ul hardware-ului, ori de câte ori este posibil. În scenariul nostru, reducem volumul de lucru pe procesoarele cu scop general, permițând mult mai multe GPU-uri paralele și capabile să facă față unor calcule specifice, obținând astfel performanțe mai bune. Atât sarcina de redare a conținutului paginii, cât și de compunere a acesteia este accelerată, deși diferite API-uri sunt utilizate pe diferite platforme.

Pe Windows, Direct2D se utilizează pentru accelerarea conținutului, inclusiv manipulări în panza și desen, în timp ce Direct3D este utilizat pentru compoziția accelerației. Pe OS X, Quartz se ocupă de primul, în timp ce OpenGL-ul mult mai deschis are grijă de acesta din urmă.


J? GerMonkey JavaScript Engine

J? GerMonkey este o versiune avansată, optimizată a lui TraceMonkey, motorul JS din Firefox 3.6

În conformitate cu așteptările dezvoltatorilor, Firefox se mândrește cu un nou motor JavaScript sub capota - J? GerMonkey. O versiune îmbunătățită a programului TraceMonkey (motorul JS din Firefox 3.6), JM gerMonkey adaugă multe optimizări ale mixului, rezultând în îmbunătățirea performanțelor uimitoare.

Optimizările mai noi și mai inteligente, cum ar fi o abordare JIT pe metode, comportamente mai nativ mai agresive, rezultând performanțe mult mai bune decât concurența. Pentru a vă oferi un exemplu, Firefox înregistrează scoruri de aproximativ șase ori mai bune în benchmark-ul V8 și de trei ori mai repede în benchmark-urile SunSpider comparativ cu Firefox 3.6.

În ansamblu, J? GerMonkey a adus Firefox în cursa pentru performanță JavaScript supremă.


CSS Transitions și altele

Mulțumită lui heskinradiophonic

Firefox acceptă în cele din urmă tranzițiile și transformările CSS3.

Una dintre cele mai notabile adăugiri pentru un dezvoltator de front-end este suportul extins pentru tranzițiile CSS3. În timp ce celelalte browsere s-au lăudat deja de trecerea timpului pentru CSS3, Firefox a fost extrem de lipsit. Ultima versiune oferă o implementare aproape completă a caietului de sarcini.

Tranzițiile CSS oferă o metodă CSS pură pentru a anima schimbările dintre proprietățile CSS. Transformările precum scalarea, rotirea și înclinarea sunt pe robinet și pentru tine! Puteți folosi chiar și aceste transformări în tranziții pentru a crea efecte minunate. Amintiți-vă acele fragmente jQuery pe care le-ați folosit pentru a atenua elementele și culorile, în interiorul și în afară? Pentru intențiile și scopurile noastre, ele sunt destul de redundante - câteva linii de CSS sunt tot ceea ce este nevoie acum.

Noile caracteristici includ:

  • Suport pentru proprietățile touch.
  • Adăugarea -Moz-orice pentru a grupa împreună selectori relevanți din punct de vedere structural.
  • Valorile calculate prin -Moz-calc permițându-vă să definiți valori prin expresii matematice.

Chiar dacă a luat o echipă de la Mozilla o perioadă de timp, simpla acțiune de sprijin suplimentar facilitează dezvoltatorului web să îmbrățișeze aceste noi tehnologii.


WebM

Firefox livrează acum suport WebM, sporind astfel atât capacitatea sa de a consuma conținut video pe web, cât și cota de piață a WebM.

Chiar dacă dezvoltatorii nocturni au reușit să redea formatul pentru câteva luni, aceasta este prima versiune oficială care oferă suport pentru formatul.

Dacă acest subiect vă face puțin capul, vă sugerăm să citiți articolul meu anterior despre codecurile video de pe web unde puteți găsi mai multe informații despre acest subiect. Este suficient să spunem că prin adăugarea de asistență WebM, Mozilla și-a consolidat ideologia bazată pe standarde și le-a simplificat viața utilizatorilor într-o singură mișcare.


IndexedDB

IndexedDB salvează datele ca documente în format JSON.

IndexedDB este ca Mozilla să ia o rută radicală și mai utilizabilă în comparație cu alte browsere, optând pentru abordarea NoSQL. Rețineți că cele mai multe browsere utilizează API-ul Web SQL în care dezvoltatorii scriu SQL pentru a obține informații stocate în bazele de date SQLite.

IndexedDB salvează datele ca documente în format JSON și vă permite să accesați informațiile pe care le deține printr-un API mai simplu, non-SQL. Rezultatul final? Sintaxă mult mai ușoară și un API mai standardizat, care te izolează de nuanțele implementării, oferind în același timp o flexibilitate enormă.


Consola Web

În timp ce nu va înlocui Firebug, noua Consola Web este incredibil de utilă.

Noua Consola Web înlocuiește Consola de eroare cu versiunile anterioare. În timp ce nu va înlocui unele dintre instrumentele avansate, cum ar fi Firebug, vine eminamente la îndemână atunci când încercați prin intermediul unui site sau a unei aplicații.

Consola poate fi deschisă cu ajutorul tastelor Ctrl + Shift + K [Cmd pentru săli de fructe] și este livrat împreună cu:

  • un interpret JavaScript de linie de comandă care vă permite să executați JavaScript în timp real.
  • un mecanism de logare care înregistrează erorile CSS și JavaScript. Cererile de rețea sunt înregistrate și vă permit să accesați informații despre cerere. Headers, răspunsuri, totul este joc.
  • un inspector de obiect pentru a examina orice obiect JavaScript care se află în memoria browserului.

O mai bună tipografie

Suportul pentru OpenType vă permite acum să jucați cu setări mai avansate, cum ar fi kerning-ul.

Acum puteți utiliza OpenType, un format de font deschis, oferindu-vă acces la o paletă mult mai variată - nu vă mai limitați la fonturile web securizate.

În timp ce s-ar părea plictisitor, suportul pentru OpenType oferă o serie de caracteristici. Puteți modifica kerning, ligaturi și obțineți fracțiuni automate printre multe altele.

Unul dintre aspectele care trebuie notate este că dacă site-ul dvs. nu este englezesc, noul motor Firefox va redă conținutul dvs. fără a se întâlni sau a fi blocat vizual. Și cu creșterea exponențială în paginile web non-engleză, aceste caracteristici ajută atât dezvoltatorii, cât și utilizatorii finali.


E un Wrap

Cea mai nouă iterație a Firefox este destul de saltă față de generația anterioară, cu o serie de adăugări și îmbunătățiri destinate dezvoltatorilor și designerilor. De asemenea, junkii de la JavaScript au avut grijă de îmbunătățirea performanțelor noului motor, de îmbunătățirea suportului HTML5 și CSS3, precum și de un set mult mai robust de instrumente.

Deci, ce credeți despre Firefox 4? Iubesc? Urăsc asta? Spuneți-ne în comentarii și vă mulțumim mult pentru citire!

Cod