Ventajas y desventajas de usar Flutter para desarrollo móvil



Flutter es un nuevo marco de código abierto creado por Google que ayuda a desarrollar aplicaciones nativas de Android y iOS con una base de código. Es más que un marco, ya que es un kit de desarrollo de software completo que tiene todo lo que necesita para crear aplicaciones multiplataforma. Esta revisión de Flutter analizará las ventajas y desventajas de la herramienta.

Ventajas


1. Alto rendimiento


Numerosos factores afectan el rendimiento de una aplicación, incluido el uso de la CPU, el número de fotogramas por segundo, el tiempo de respuesta promedio, el número de solicitudes por segundo y más. Flutter ofrece una velocidad constante de 60 fps, que es la velocidad a la que las pantallas contemporáneas muestran una imagen suave y clara.

Los desarrolladores intentan mantener el movimiento a este nivel ya que el ojo humano puede identificar cualquier retraso en esta velocidad de cuadros. En comparación con React Native y Xamarin, este marco estaba por delante con un tiempo de lanzamiento de 220 milisegundos y 58 fps.

2. Accesibilidad e internacionalización


Como resultado de abogar por la inclusión y la diversidad, Google ofrece oportunidades integradas para crear aplicaciones a las que pueda acceder un amplio espectro de usuarios. Normalmente, cuando necesita que su aplicación funcione en diferentes regiones e idiomas, desea preparar su código para el contenido localizado, que generalmente se crea más tarde. Este proceso se conoce como internacionalización.

Flutter para desarrollo móvil ofrece de forma nativa widgets basados ​​en el paquete Dart intl, lo que hace que este proceso sea más sencillo. Ahora admite 24 idiomas, pero también unidades de medida, opciones de diseño, monedas y fechas.

3. Actualizaciones inmediatas


La arquitectura de Flutter ha sido grabada con la función de recarga en caliente para permitir actualizaciones instantáneas sin la necesidad de complementos. Con la recarga en caliente, puede ver las actualizaciones en tiempo real. Si experimenta un error al ejecutar el código, el marco le permite corregirlo de inmediato y continuar sin tener que reiniciarlo.

Regresar a la programación normal donde la implementación demora muchos minutos puede ser un problema. La recarga en caliente mejora su productividad, permite la experimentación sin demoras prolongadas y ayuda con iteraciones rápidas.

4. Curva de aprendizaje moderada


Si aprender Dart es simple, entonces familiarizarse con esta herramienta será más fácil. Muchas personas con poco conocimiento de codificación pueden desarrollar prototipos y aplicaciones con el marco. Además, no necesita ninguna experiencia de desarrollo móvil para usarlo.

Además, Google es popular por desarrollar documentación bien estructurada y detallada, que es algo que React Native tiene problemas para hacer. Puede revisar estos documentos, así como lecciones en video y lecciones prácticas de Codelabs. Los cursos están disponibles en Udacity y Udemy, e incluso puedes unirte a las comunidades de Facebook.

5. Widgets personalizados y listos para la codificación rápida de la interfaz de usuario


Esta herramienta utiliza widgets listos para usar. Con estos bloques de construcción, la herramienta lo ayuda a crear una interfaz de usuario. Si bien muchos enfoques utilizan diferentes objetos como controladores, vistas y diseño, este marco presenta un modelo de objetos unificado y consistente. Cada objeto en esta herramienta es un widget, que incluye fuentes, botones y rellenos. Puede combinar widgets para formar diseños, y puede decidir utilizar widgets en cualquier nivel de personalización.

Los widgets en este marco están organizados en árboles, lo que ayuda a la representación. Pero pueden conducir a una sofisticación excesiva de la estructura completa. Las grandes aplicaciones pueden necesitar hasta diez capas de código para formar un objeto básico. Por lo tanto, se necesita una planificación adecuada de la estructura por adelantado.

Desventajas


1. Problemas con iOS


Dado que Google creó Flutter para desarrollo móvil, los desarrolladores tienen razón al preocuparse por su implementación de iOS. Debido a que Google tiene un interés directo en la corrección rápida de errores, crear aplicaciones de Android en el marco es divertido y rápido. La última actualización de la herramienta incluye una apariencia iOS de píxeles perfectos.

La configuración de iPhone se creó en el marco para permitir las posibilidades de los widgets de Cupertino. Pero estas y otras características de diseño se actualizaron más tarde y se basaron en las características de iOS 10 a pesar de que iOS 11 ya se había lanzado por un tiempo. Por lo tanto, no está claro si las actualizaciones continuarán lanzándose tan rápido como las de la versión de Android después de que la herramienta abandone la fase beta.

2. Tamaño de archivo masivo


Los desarrolladores pasan por grandes extensiones para reducir el tamaño de una aplicación. Los usuarios tienen un almacenamiento restringido en el teléfono, y es mejor lanzar una aplicación que les impedirá eliminarla en favor de sus imágenes y canciones favoritas. Para minimizar el tamaño del código, los programadores normalmente evitan animaciones, comprimen imágenes y reducen la cantidad de paquetes y bibliotecas.

El marco ha decepcionado enormemente a los desarrolladores después de que la aplicación Hello world llegara a 6.7MB. Incluso cuando se redujo a 4,7 MB, permaneció significativamente más grande que Kotlin, que tiene 550 KB, y Java nativo, que tiene 539 KB.

3. Dardo


Dart se usa para el desarrollo de Flutter y tiene tanto beneficios como inconvenientes. Es un lenguaje de programación y está orientado a objetos además de rápido. Sin embargo, no es tan bueno como los lenguajes de programación como C #, Java, Objective-C y JavaScript.

No muchos desarrolladores novatos se encontrarán con Dart en su viaje de aprendizaje, y puede ser un desafío obtener nuevos desarrolladores para su equipo. Este es un factor esencial a tener en cuenta al optar por un enfoque multiplataforma.

4. No hay bibliotecas de terceros


Los paquetes y bibliotecas de terceros tienen un papel importante en la automatización del desarrollo de software para desarrolladores y aliviando el requisito de programar todo desde el principio. Estas bibliotecas son normalmente de código abierto, probadas previamente y fácilmente disponibles. Para las tecnologías más populares y antiguas, obtener el paquete requerido es fácil.

Sin embargo, dado que Flutter para desarrollo móvil es nuevo, no es fácil encontrar paquetes y bibliotecas gratuitas. Su recurso oficial de paquetes gratuitos todavía está mejorando, y su lista de herramientas aún está experimentando un crecimiento. En consecuencia, deberá esperar antes de decidir usarlo para el desarrollo a largo plazo.

Si está buscando una herramienta de desarrollo de aplicaciones móviles que tenga una curva de aprendizaje moderada, alto rendimiento, accesibilidad e internacionalización, widgets listos y actualizaciones inmediatas, Flutter es para usted. Sin embargo, tome nota de sus inconvenientes para que pueda saber cuál es su posición.

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


All Articles