Con il browser Chrome di Google e il kernel WebKit, alcuni appassionati di tecnologia si chiedono se il kernel Gecko di Mozilla stia per finire. Tuttavia, nonostante la crescente popolarità di WebKit, coloro che conoscono le differenze tra WebKit e Gecko, e li apprezzano, ritengono che la possibilità che Mozilla utilizzi il kernel WebKit nelle future versioni di Firefox non sia ancora discussa. Vantaggi del Webkit Webkit è un motore di rendering HTML open source sviluppato dal progetto KHTML di Apple basato su KDE. Abbiamo visto dalla recensione di Chrome che Webkit è un motore di rendering molto leggero, lodato per la sua base di codice compatta e pulita, l'eccellente supporto standard e la piccola impronta di memoria. Queste qualità rendono Webkit un kernel popolare per molti browser. Webkit è utilizzato principalmente nel browser Safari di Apple e nell'iPhone, ma anche alcuni importanti produttori come Adobe, Nokia e Trolltech utilizzano questo nucleo. Gli utenti di Webkit includono anche alcuni browser meno conosciuti, tra cui iCab, Omniweb, Shiira ed Epiphany. In alcuni sistemi operativi di livello 2 come Haiku, Syllaba e persino Amiga, Webkit è anch'esso molto popolare. Sempre più sviluppatori utilizzano Webkit per sviluppare applicazioni Internet ricche. Dopo aver valutato numerosi kernel, Google ha scelto WebKit per il suo browser mobile Android e il browser desktop Chrome. Il commento accettato dagli sviluppatori su Webkit è che è un motore di rendering molto valido che può essere utilizzato in molte situazioni, e il suo fascino ha portato molti sviluppatori a chiedersi se esista un mercato per il kernel Gecko di Mozilla. Perché Apple sta boicottando Gecko Originato da Netscape e precedente a KHTML, Gecko è stato criticato per la sua vasta e complessa base di codice. Gecko è molto potente, ma è costoso, complesso e ha un'ampia impronta di memoria. Di conseguenza, ci sono molte occasioni in cui le molte caratteristiche di Gecko diventano un peso. Il motivo per cui il kernel di Gecko è eccessivamente complesso è che Gecko intende offrire più funzionalità oltre al rendering HTML. Le prime ambizioni di Mozilla erano enormi, con la suite più iniziale di applicazioni di Mozilla che includeva un browser, programmi di posta e newsgroup, strumenti di web design e chat IRC. Oltre a renderizzare HTML, Gecko offre anche un motore di generazione di interfacce utente basato su XML ampiamente utilizzato, XUL. XUL è utilizzato in tutti questi programmi. XUL è ancora utilizzato in Firefox oggi per generare interfacce utente, rendendolo una delle applicazioni multi-estensione più preziose di Firefox. Un altro motivo per cui Gecko è eccessivamente complesso è XPCOM, un potente sistema di componenti. Sebbene XPCOM porti molte funzionalità entusiasmanti a Gecko per renderizzare il motore di rendering componentizzato, è stato abusato da alcuni sviluppatori, e quando Ars Technica intervistò Scott Collins nello sviluppatore di Mozilla nel 2004, Scott Collins disse che l'abuso di XPCOM era uno dei diversi errori gravi commessi da Mozilla. Data la complessità che comportano XUL ed XPCOM, è naturale che Apple consideri di scegliere un kernel più leggero per Safari. Apple voleva progettare un browser che potesse essere strettamente integrato con il sistema operativo Mac e prevedeva anche che il motore avrebbe supportato dispositivi mobili, quindi riconobbe che KHTML era più adatto di Gecko. Nel 2003, quando Apple decise di usare KHTML in Safari, Mike Shaver di Mozilla scrisse sul blog sulle carenze di Gecko. Ha anche previsto che Apple sarebbe diventata la loro alleanza per promuovere gli standard web. Scrisse, "Il nostro obiettivo era piccolo e raffinato, e la massa e il gonfiore di Gecko hanno fatto sì che i nostri punteggi fossero in varie recensioni, e se dovessi scrivere un nuovo browser, prenderei in considerazione opzioni diverse da Mozilla. Spero che Mozilla impari da Safari/KHTML perché implementano funzionalità davvero ottime con un decimo del codice. ” Gecko dà vita a Firefox 3 Dal 2003, molte cose sono cambiate. La base di codice di Gecko si è evoluta a lungo, Gecko è ancora complesso, ma molti dei suoi difetti storici vengono affrontati, e Gecko porta molte innovazioni a Firefox 3 che apportano miglioramenti significativi all'intera esperienza di navigazione web. Gecko 1.9 utilizza il framework di rendering multipiattaforma Cairo, enormi miglioramenti a SVG semplificano il codice e introducono funzionalità molto interessanti come lo zoom a pagina intera e, allo stesso tempo, un algoritmo di reflow rifattorato che ha permesso a Gecko di superare i test Acid 2. Mozilla ha inoltre ridotto significativamente la sua impronta di memoria, superando persino Safari ed Opera. L'uso di XPCOM è stato notevolmente ridotto e l'impronta di risorse di XPCOM è stata ridotta grazie a un nuovo riciclatore di riciclaggio. Questo lavoro continua, e Mozilla ridurrà ulteriormente il carico su XPCOM in Firefox 4. Altri difetti di Gecko sono stati anch'essi risolti nel nuovo sviluppo, come l'aggiunta del supporto per CSS 3 nella versione alpha di Firefox 3.1 e alcuni miglioramenti delle prestazioni che renderanno Gecko più competitivo. Il motore TraceMonkey di Mozilla sarà probabilmente incluso in Firefox 3.1, il che migliorerà significativamente le prestazioni di Javascrip{filter}t. Dal punto di vista tecnico, Gecko è ora molto solido e non peggiore di Webkit. Alcune evidenze suggeriscono che Gecko stia facendo progressi nel settore mobile, cosa che non era possibile non molto tempo fa. Mozilla dispone delle risorse, dell'esperienza di sviluppo e del supporto della comunità che guideranno Gecko verso il territorio a cui qualsiasi webkit può accedere. |