martes, junio 17, 2008
|
En el WWDC 2008 (la conferencia anual de desarrolladores de Apple, en donde se anunció el iPhone 3G), acaban de dar una sesión técnica para programadores que hizo que se "prendiera una bombilla" sobre mi cabeza, pues el tema tratado es algo que confirma una sospecha que tenía desde hace un buen tiempo (y que reporté de manera indirecta en este artículo, que recomiendo que lean) en donde se me empezó a hacer evidente que Apple no tenía intensiones de soportar a Flash en esa plataforma (sin embargo, este artículo de hoy cubre mas que ese tema, así que los anti-iPhonistas pueden seguir leyendo :)).
Noten que tres meses después de yo escribir ese artículo, Steve Jobs dio una excusa de por qué no había Flash en el iPhone, y Adobe anunció un esfuerzo para crear a Flash para el iPhone. Sin embargo, creo que lo revelado esta semana en el WWDC 2008 es algo que finalmente le pone el clavo final al sarcófago de Flash en el iPhone (o al menos a una versión que venga instalada de fábrica en el Safari del iPhone por parte de Apple), y de paso catapulta a Apple al frente de la carrera de los grandes en Aplicaciones Web para los navegadores tradicionales. Lo que Apple demostró fue una tecnología llamada SproutCore, una nueva librería de Javascript para crear aplicaciones tipo AJAX. A primera vista esto es tan solo un anuncio mas de una larga lista de librerías para crear aplicaciones tipo AJAX con Javascript, un mercado ya medio saturado, con excelentes librerías como script.aculo.us y prototype.js, o las librerías AJAX de Yahoo y Google. Inclusive, la misma Apple ya había anunciado planes para desarrollar en el iPhone con AJAX. Lo interesante de esta noticia, sin embargo, es que Apple ha replicado el modelo de Cocoa (los APIs, o interfaces de programación, de Mac OS X) en SproutCore, tanto en su modelo de programación y eventos internos, como en la apariencia visual de las aplicaciones. Es decir, resumido en una oración, SproutCore es un framework (en este caso, un conjunto de funciones) que te permite crear aplicaciones del tipo Mac OS X pero que ejecutan en prácticamente cualquier navegador, desde el mismo Safari (tanto en las Macs como en los iPhones), hasta Firefox, Opera, o Internet Explorer. Y noten que esto no es una tecnología futura, es una tecnología ya probada, basada en el original Sprout Framework, y el mismo servicio de Mobile Me anunciado recientemente (lean un análisis al respecto en este enlace) lo utilizará al 100% en su portal cuando salga en las próximas semanas. ¿Cuál es el significado de SproutCore en la estrategia de Apple? Pues algo inmenso, pues SproutCore representa nada mas y nada menos que el nuevo hermano de Mac OS X y iPhone OS. Con SproutCore, Apple tiene ahora un trío asombroso de tecnologías: 1. El Mac OS X para dispositivos como las Macs y MacBooks, con Cocoa como el interfaz de aplicaciones nativas. 2. El iPhone OS, basado en Mac OS X, con Cocoa Touch para interfaces visuales multi-toque, y destinado a dispositivos móviles. 3. SproutCore, para aplicaciones "no nativas" sino que del tipo "aplicaciones web", y que funcionen tanto en Mac OS X, como en el iPhone, o en cualquier otro navegador del mercado. Con esto está mas que claro que Apple está creando un asalto por completo al mercado de la próxima generación de aplicaciones móviles y de Internet. Noten además que SproutCore toma ventaja de las últimas especificaciones de HTML 5, para almacenar datos y aplicaciones localmente, sin necesidad de una conexión a Internet, o de plugins como Google Gears. Algo interesante es que SproutCore es totalmente abierto, sin restricciones de ningún tipo, algo que es particularmente contrario a las medidas que usualmente toma Apple para controlar todo. Sin embargo, hay una muy buena razón de hacer esto: Si una gran masa adopta a SproutCore como un motor para crear aplicaciones tipo AJAX, indirectamente estarán creando aplicaciones para el ecosistema de Apple, y Apple ha dejado claro que planea que las aplicaciones de tipo AJAX funcionen mejor en su navegador Safari que en cualquier otro, estando en estos momentos reimplementado el núcleo de Safari para este fin. Dicho sencillamente, las aplicaciones tipo AJAX se sentirán mejor en Safari, y todo programador que no haya estado dormido bajo una roca en los pasados 2 años sabe muy bien que el futuro de aplicaciones web es AJAX. Además, cuando empiecen a surgir aplicaciones con SproutCore, estas irremediablemente tendrán un "look" al estilo OS X, y las personas las asociarán mas con Macs que con Windows o Linux, lo que es muy posible que haga que mas personas adopten las Macs (y el iPhone), dado el grado de familiaridad que tendrán con el entorno a través de Internet. Nota a los técnicos en programación: Algo interesante sobre SproutCore (que se pronuncia "ess-praut-cor" en Inglés), es que por defecto implementa un modelo de programación al estilo MVC (Model-View-Controller), basado en la implementación MVC de Cocoa, para de esa manera independizar lo que es la parte visual de tu aplicación AJAX, con la parte de lógica, y la parte de datos, lo que hace a SproutCore una herramienta bien potente para desarrollar este tipo de aplicaciones, ya que evita el problema mas grave de aplicaciones AJAX: el código tipo "espagueti". Si quieren tener idea del tipo de aplicaciones que es posible crear con SproutCore, vean este demo, y en esta otra página pueden ver una muestra de los controles disponibles para crear aplicaciones. Página oficial de SproutCore Blog oficial de SproutCore autor: josé elías |
5 comentarios |
Opinión / Análisis |
Comentarios
Añadir Comentario |
en camino a la singularidad...
©2005-2024 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax
Seguir a @eliax
Excelente, un framework MVC de javascript. Seria interesante combinar este framework con el que considero el mejor documentado , mas manejable framework de PHP: Symfony, el cual es mi favorito.
Symfony utiliza por default a prototype.js pero no es mvc