NativeScript — Desarrolla aplicaciones móviles usando JavaScript (muy pronto)


NativeScript[4]

Existen muchas herramientas para ejecutar aplicaciones escritas en JavaScript para Android, iOS o Windows Phone, o casi híbridas, digo casi porque muchas de ellas sólo hacen de intermediario limitado entre la aplicación web orientada a dispositivos móviles agregando funcionalidades con plugins que deberemos buscar según nuestras necesidades ya sea para interactuar con cierta API de Android o iOS, me refiero a herramientas tales como Cordova, y demás otros que son variaciones de ésta o están basados en ésta. Sin embargo, Telerik, una empresa que ofrece herramientas de desarrollo online para crear aplicaciones móviles usando estándares web, está trabajando en una herramienta que promete darnos un mayor acercamiento a la API nativa de la plataforma que elijamos para nuestras aplicaciones y sin dejar nuestro querido JavaScript.

100% Acceso a la API nativa de la plataforma.

Así como lo leen, toda la funcionalidad nativa de la plataforma estará disponible sobre una capa de JavaScript.

100% código compartido

Tanto aplicaciones para iOS, Android como Windows Phone compartirán el mismo código base, sólo hará falta ajustarlo a la plataforma según corresponda.

Razones por las que nos podría importar

— Experiencia de usuario completamente nativa
— Utilización de bibliotecas JavaScript de terceros
— Open Source
— Rich data-binding – sintáxis de enlace de datos en XML
— Declaración de Interfaz de Usuario en XML compatible con todas las plataformas

La versión 0.5 beta estará disponible este mismo mes, falta muy poco pero ya pueden estar viendo algunos ejemplos, documentación entre otros datos en su página oficial en Github https://github.com/NativeScript

Últimamente se reportó más actividad en sus repositorios, lo cual nos hace creer que ya no falta mucho para poder utilizarlo y es de esperarse que como recién están comenzando y es la primera versión beta la que llegue, tendrá errores y características que falten agregar.

Para empezar sólo estarán disponibles el soporte para iOS y Android, dejando para más tarde el soporte para la plataforma Windows Phone.

Desde luego, en Windows y Linux no podremos desarrollar aplicaciones para iOS debido a que utiliza XCode.

Más información https://github.com/NativeScript/nativescript-cli.

Tiene similitud a la creación de aplicación que sigue Cordova, lo cual sugiere que estaría también basado en Cordova, pero no mencionan nada sobre ello.

Para poder instalar la línea de comandos de NativeScript, necesitamos tener instalado NPM (Node Package Manager) desde luego con NodeJS.

npm install nativescript –g

NativeScript-CLI

NOTA: requiere tener Android SDK, Apache Ant y Java SDK accesibles desde la línea de comandos (las instrucciones las pueden leer en las instrucciones publicadas en github).

Para crear un proyecto, procedemos de forma similar a las herramientas como Cordova.

tns create HolaMundo

NativeScript-Hola-Mundo

También podemos utilizar una aplicación web que ya tengamos hecha:

tns create MiAplicacion --copy-from <carpeta>

NativeScript creará un nuevo proyecto basado en la plantilla que ésta incluye, y establece el identificador de la aplicación siguiendo este patrón:

org.nativescript.miaplicacion

La estructura de archivos y carpetas del proyecto lucirán similar a esta disposición de archivos:

MyApp/
|-- app/
|-- |-- app/
|-- |-- App_Resources/
|-- |-- |-- Android/
|-- |-- `-- iOS/ 
|-- |-- tns_modules/
|-- |-- `-- .../
|-- |-- LICENSE
|-- |-- package.json
|-- `-- README.md
|-- platforms/
`-- .tnsproject

La carpeta app es el espacio principal de desarrollo.

Accedemos a la carpeta del proyecto nuevo y agregamos la plataforma que deseemos soportar.

tns platform add android

TNS

Ahora preparamos nuestra aplicación, esto revisará cualquier error.

tns prepare android
tns build android

tns-build

Finalmente lo probamos en nuestro dispositivo o en un emulador.

tns deploy android

NativeScript-demo

Esperemos al lanzamiento oficial, para tener la documentación completa.

NativeScript http://www.telerik.com/nativescript