Con el navegador Chrome de Google y el núcleo WebKit, algunos fanáticos de la tecnología se preguntan si el kernel Gecko de Mozilla está llegando a su fin. Sin embargo, a pesar de la creciente popularidad de WebKit, quienes conocen las diferencias entre WebKit y Gecko, y lo aprecian, creen que la posibilidad de que Mozilla utilice el núcleo de WebKit en futuras versiones de Firefox aún no se ha debatido. Ventajas de Webkit Webkit es un motor de renderizado HTML de código abierto desarrollado por el proyecto KHTML de Apple basado en KDE. Hemos visto en la reseña de Chrome que Webkit es un motor de renderizado muy ligero que recibe elogios por su base de código compacta y limpia, excelente soporte estándar y pequeño consumo de memoria. Estas cualidades hacen que Webkit sea un kernel popular para muchos navegadores. Webkit se utiliza principalmente en el navegador Safari de Apple y en iPhone, pero algunos fabricantes importantes como Adobe, Nokia y Trolltech también emplean este núcleo. Los usuarios de Webkit también incluyen algunos navegadores menos conocidos, como iCab, Omniweb, Shiira y Epiphany. En algunos sistemas operativos de nivel 2 como Haiku, Syllable e incluso Amiga, Webkit también es popular. Cada vez más desarrolladores utilizan Webkit para desarrollar aplicaciones de Internet enriquecidas. Tras evaluar numerosos kernels, Google eligió WebKit para su navegador móvil Android y navegador de escritorio Chrome. El comentario aceptado por los desarrolladores sobre Webkit es que es un motor de renderizado muy bueno que puede usarse en muchas situaciones, y su atractivo ha llevado a muchos desarrolladores a preguntarse si existe mercado para el kernel Gecko de Mozilla. Por qué Apple boicotea a Gecko Originario de Netscape y anterior a KHTML, Gecko ha sido criticado por su gran y compleja base de código. Gecko es muy potente, pero es caro, complejo y tiene un gran consumo de memoria. Como resultado, hay muchas ocasiones en las que las muchas características de Gecko se convierten en una carga. La razón por la que el núcleo de Gecko es excesivamente complejo es que Gecko pretende ofrecer más funcionalidad más allá del renderizado HTML. Las primeras ambiciones de Mozilla eran enormes, con la suite más temprana de aplicaciones de Mozilla incluyendo un navegador, programas de correo y grupos de noticias, herramientas de diseño web y chat IRC. Además de renderizar HTML, Gecko también ofrece un motor de generación de interfaces de usuario basado en XML ampliamente utilizado, XUL. XUL se utiliza en todos estos programas. XUL sigue utilizándose en Firefox hoy en día para generar interfaces de usuario, lo que lo convierte en una de las aplicaciones multiextensión más valiosas de Firefox. Otra razón por la que Gecko es excesivamente complejo es XPCOM, un sistema de componentes potente. Aunque XPCOM aporta muchas funciones emocionantes a Gecko para hacer que el motor de renderizado sea componentizado, algunos desarrolladores han abusado de esta información, y cuando Ars Technica entrevistó al desarrollador de Mozilla Scott Collins en 2004, Scott Collins dijo que el abuso de XPCOM fue uno de varios errores graves cometidos por Mozilla. Dada la complejidad que aportan XUL y XPCOM, es natural que Apple considere elegir un kernel más ligero para Safari. Apple quería diseñar un navegador que pudiera integrarse estrechamente con el sistema operativo Mac, y también prevían que el motor debía soportar dispositivos móviles, por lo que reconocieron que KHTML encajaba mejor que Gecko. En 2003, cuando Apple decidió usar KHTML en Safari, Mike Shaver, de Mozilla, escribió en su blog sobre las carencias de Gecko. También predijo que Apple se convertiría en su alianza para promover los estándares web. Escribió, "Pequeño y refinado era nuestro objetivo, y la voluminosidad y la abundancia de Gecko sacaron nuestras puntuaciones en varias reseñas, y si tuviera que escribir un navegador nuevo, consideraría opciones distintas a Mozilla. Espero que Mozilla aprenda de Safari/KHTML porque implementan funciones realmente buenas con una décima parte del código. ” Gecko da vida a Firefox 3 Desde 2003, muchas cosas han cambiado. La base de código de Gecko ha evolucionado durante mucho tiempo, Gecko sigue siendo complejo, pero muchos de sus fallos históricos están siendo corregidos, y Gecko aporta muchas innovaciones a Firefox 3 que mejoran significativamente toda la experiencia de navegación web. Gecko 1.9 utiliza el framework de renderizado multiplataforma Cairo, grandes mejoras en SVG simplifican el código e introducen funciones muy interesantes como el zoom de página completa y, al mismo tiempo, un algoritmo de reflujo refactorizado que permitió a Gecko superar las pruebas de Acid 2. Mozilla también ha reducido significativamente su huella de memoria, incluso superando a Safari y Opera. El uso de XPCOM se ha reducido considerablemente y la huella de recursos de XPCOM se ha reducido gracias a un nuevo reciclador de reciclaje. Este trabajo continúa, y Mozilla reducirá aún más la carga sobre XPCOM en Firefox 4. Otros defectos de Gecko también se han abordado en el nuevo desarrollo, como la incorporación de soporte para CSS 3 en la versión alfa de Firefox 3.1, y algunas mejoras de rendimiento que harán que Gecko sea más competitivo. El motor TraceMonkey de Mozilla probablemente se incluirá en Firefox 3.1, lo que mejorará significativamente el rendimiento de Javascrip{filter}t. Desde un punto de vista técnico, Gecko ahora es muy sólido y no peor que Webkit. Algunas pruebas sugieren que Gecko está ganando terreno en la industria móvil, algo que no era posible hace mucho tiempo. Mozilla cuenta con los recursos, la experiencia en desarrollo y el apoyo comunitario que guiarán a Gecko hacia el terreno al que cualquier webkit puede acceder. |