La descripci√≥n general de los marcos de JavaScript: ¬ŅCu√°l elegir para su proyecto?

Hace diez a√Īos, las empresas que quer√≠an crear proyectos multiplataforma tendr√≠an que cooperar con diferentes equipos de desarrollo y expertos. Sin embargo, 2009 ha cambiado el juego, porque los desarrolladores de Nitobi (m√°s tarde comprados por Apache) presentaron Cordova , un marco nuevo que fue capaz de convertir aplicaciones web en sistemas m√≥viles. Al vincular las API de los dispositivos a trav√©s de complementos, los desarrolladores pod√≠an acceder a tel√©fonos inteligentes y tabletas. Cordova es una tecnolog√≠a basada en JavaScript compatible con varias plataformas.

En esta gu√≠a, revisaremos otros tres sistemas impulsados ‚Äč‚Äčpor JS, veremos sus caracter√≠sticas √ļnicas y las compararemos.

Aplicaciones móviles: tipos y características


Pero comencemos con algunas cosas b√°sicas. Para los desarrolladores, no hay ning√ļn secreto en que las aplicaciones pueden ser nativas o h√≠bridas. Queremos cubrir brevemente lo que significan estos t√©rminos y c√≥mo difieren.

Las aplicaciones nativas son aquellas creadas usando un idioma nativo para una √ļnica plataforma espec√≠fica (por ejemplo, Kotlin - para Android; Objective C - para iOS). El desarrollo de productos de software nativos es costoso ya que debe dise√Īar una aplicaci√≥n completamente nueva para cada plataforma por separado. Al mismo tiempo, estas aplicaciones pueden ayudar a ciertos sistemas a desarrollar todo su potencial.

El segundo tipo son las aplicaciones híbridas. Como regla general, se basan en lenguajes uniformes y son compatibles con diferentes sistemas operativos. Son más baratos de construir, ya que puede utilizar un conjunto de herramientas universales para todos los sistemas. Sin embargo, los usuarios suelen interactuar con aplicaciones híbridas a través de WebView o navegadores. Por lo tanto, son más lentos y tampoco pueden proporcionar la misma experiencia de usuario que las aplicaciones nativas, ya que carecen de características específicas de la plataforma.

Dado que los productos híbridos a menudo dependen de los marcos de trabajo JS, revisémoslos y descubramos cómo pueden ayudar durante el desarrollo.

Onico


Fue lanzado en 2013 y dise√Īado para dise√Īar aplicaciones utilizando tecnolog√≠a simple como JS, HTML5 y CSS. Los productos creados con Ionic funcionan con plataformas m√≥viles, de escritorio y en l√≠nea.

Tenga en cuenta que esta herramienta se centra en la interfaz de usuario en lugar de las soluciones de fondo. Para desarrollar productos con Ionic, a√ļn necesita herramientas adicionales como Cordova para envolver el c√≥digo. Por ahora, el conjunto est√° integrado con Angular, mientras que las extensiones para Vue y React est√°n en desarrollo.

Los programas impulsados ‚Äč‚Äčpor Ionic se ejecutan en navegadores de bajo nivel y hacen uso de las funciones del dispositivo como GPS o c√°mara. Como ejemplo de aplicaciones i√≥nicas, nos gustar√≠a destacar el producto MarketWatch oficial y la versi√≥n turca de la aplicaci√≥n McDonald's.

Nativecript


El siguiente marco de c√≥digo abierto con tecnolog√≠a JS se lanz√≥ un poco m√°s tarde que Ionic. Los autores crearon NativeScript en 2014 con el prop√≥sito de dise√Īar aplicaciones nativas a trav√©s de JavaScript u otro lenguaje uniforme como TypeScript. Tambi√©n funciona con Angular y Vue. Los productos finales son los mismos que los creados a trav√©s de marcos nativos. Adem√°s, los desarrolladores pueden utilizar bibliotecas de terceros sin herramientas de ajuste de c√≥digo.

Para transformar los elementos JS en elementos comprensibles para las API de los dispositivos, NativeScript utiliza puentes, tiempos de ejecución para las interacciones entre las interfaces y el código. Técnicamente, es posible gracias a JS Virtual Machines (por ejemplo, V8 para Android y JavaScriptCore para iOS). Entre los productos creados con este marco, debe verificar las aplicaciones para PUMA y Strudel.

Reaccionar nativo


Fue lanzado en 2013, pero se convirti√≥ en c√≥digo abierto en 2015. React Native es una herramienta bien conocida para lanzar aplicaciones nativas, seg√ļn los usuarios de GitHub. Obviamente, el sistema se basa en la biblioteca React que se centra en el dise√Īo de interfaces de usuario, pero React Native tambi√©n tiene muchos widgets que ayudan a los desarrolladores a ofrecer una experiencia nativa.

B√°sicamente, el sistema transforma su c√≥digo en un conjunto de vistas nativas para plataformas. Digamos que convierte los m√≥dulos de texto iniciales en UIView para iOS y en TextView para Android. Por lo tanto, podemos acercar el dise√Īo al nativo en lugar de iniciar aplicaciones en las vistas del navegador.

React Native es muy popular e incluso los desarrolladores de Facebook lo usan (por ejemplo, para crear nuevas funciones como Wellness Check). Adem√°s, grandes empresas como Bloomberg, Tesla y Vogue usan esta herramienta.

Tabla de comparación


Ya es hora de comparar los tres sistemas descritos para revelar cu√°l es el m√°s adecuado.

1. Usabilidad y rendimiento


En primer lugar, debe encontrar el marco que satisfaga perfectamente sus necesidades. Implica, la elección dependerá en gran medida de la industria en la que desee ingresar. Así:

  • Ionic es maravilloso para las aplicaciones web progresivas y tiene la mejor reutilizaci√≥n. En pocas palabras, significa la idea Escribir una vez, Ejecutar en todas partes.
  • NativeScript maneja aplicaciones m√°s complicadas con un enfoque en UX / UI, por lo que es maravilloso para crear aplicaciones m√≥viles y otros productos.
  • React Native tiene el mejor rendimiento y es perfecto para aplicaciones que dependen de la velocidad. Tiene peor reutilizaci√≥n y sigue la idea de Aprender una vez, escribir en todas partes.

2. Widgets


Preste atención a este punto si desea implementar varias extensiones:

  • I√≥nico Muchas aplicaciones y widgets, incluidos Google Maps.
  • NativeScript Admite numerosas extensiones: hay casi 1000 de ellas.
  • Reaccionar nativo. No tiene un mercado separado, pero funciona bien con aplicaciones de terceros.

3. Popularidad


Sin duda, React Native es el ganador cuando se trata de popularidad. Tiene más de 1700 colaboradores, mientras que Ionic y NativeScript cuentan con 272 y 119, respectivamente. La comunidad de desarrolladores prefiere usar React Native para diversas tareas, independientemente de su poca reutilización.

4. Dificultad


Aquí, todo depende de tu experiencia tecnológica. Ionic será simple para casi todos porque ofrece un enfoque más comprensible para la codificación. Además, hay muchas guías para leer sobre este marco. NativeScript y React Native son bastante similares. Si conoce JavaScript, será más fácil comenzar con estas herramientas.

¬ŅQu√© marco elegir?


En general, debe describir sus requisitos exactos para seleccionar la mejor herramienta. Aunque estos marcos se centran en la creaci√≥n de aplicaciones para tel√©fonos inteligentes / tabletas, tienen diferentes enfoques y especificaciones. Por ejemplo, Ionic es simple y flexible, pero no puede manejar proyectos con requisitos gr√°ficos avanzados. React Native presenta un rendimiento realmente alto, pero te obliga a dise√Īar una nueva interfaz de usuario para cada plataforma. Finalmente, NativeScript es relativamente r√°pido, pero las aplicaciones requieren mucho espacio en su dispositivo. ¬°Elige sabiamente!

Source: https://habr.com/ru/post/440992/


All Articles