El estado del arte de las Cross/Hybrid Apps

En el momento que escribo este articulo he estado mirando una tecnologia muy interesante llamada React Native.

http://i.giphy.com/IUp9WRHyCwUEg.gif

Si me siguen en Youtube o en Github saben que desarrollo en su mayoría en Ionic Framework, ademas, de tener buenos Starters en su Market pero igual siempre es bueno entender estas nuevas tecnologias que están tomando fuerza entre las comunidades.

Lo primero es entender un poco las gamas de esta tecnologias actuales. En este grafico he colocado tres clasificaciones y algunas tecnologias que me parecen van a dar mucho de que hablar en cada plataforma.

Hybrid Apps: Las Apps hibridas se construyen sobre Apache Cordova y basicamente, te permiten realizar una app utilizando HTML + CSS + JS y la envuelve en un Webview (especificado en el SDK de Android e IOS), te da acceso a las características nativas del dispositivo y te permite extender la funcionalidad a traves de plugins (Pequeñas piezas de código Java o Swift — Objetive-C ). En esta clasificación a mi pensar el más completo es Ionic Framework.

Cross Platform Apps: Las Apps resultantes de estas tecnologias son nativas (No solamente tienen un Webview). Su característica principal es que son escritas con Javascript y usan un transpilador para convertirlas a componentes Nativos. Entre los que considero más importante en esta tecnologia son React Native y NativeScript.

Native Apps: Son construidos utilizando el lenguaje de programación soportado por el SDK oficial del dispositivo. Debes desarrollar un proyecto independiente para cada plataforma y sus SDKs son muy completos. Los Lenguajes a utilizar son Objetive-C o Swift para IOS y Java para Android.

Bueno, basicamente este es un resumen del mundo del desarrollo móvil elegir entre una opción o la otra no es facil, pero puedes utilizar criterios como tiempo disponible para el desarrollo y presupuesto.

Eso es todo y Sigan programando :)