AplicacionesLenguaje de ProgramaciónSoftware de programacionwidgets

Desarrollo de aplicaciones con “Flutter”. 

¿Qué es Flutter?

Flutter es un programa de desarrollo multiplataforma, fue creado por Google en mayo de 2017.

Principalmente, era llamado como Sky y solo era apto para dispositivos Android, donde se había creado para que los desarrolladores reunieran para cada plataforma su parte grafica representado por Skia.  

Actualmente, este programa de código abierto permite utilizar una sola base de código para desarrollar aplicaciones móviles diferentes, que pueden ser ejecutadas para IOS o Android.

Además, este programa deja diseñar o crear fácil y rápido, por lo cual los diseños serán más flexibles, el tiempo de carga será más corto, etc. 

Para poder poner en marcha este programa, “hot reload” permite utilizar opciones de widgets para poder personalizarlos, así, se crean interfaces rápidas, además, se corrigen más rápido los bugs (errores). 

¿Cómo funciona? 

Este programa consiste en dos funciones:

  • SDK (Software Development Kit): Esto consta de una colección de herramientas para poder crear una aplicación móvil y reúne código para iOS o Android. 
  • Framework: Trata de un archivo de interfaz que contiene los widgets que se utilizan para personalizar la aplicación
  • por ejemplo: botones, opciones de clima, opciones de noticias, etc. 

¿Qué lenguaje de programación es utilizado en Flutter? 

El kit de desarrollo de software de Flutter se apoya en el lenguaje de programación Dart, este también fue creado por Google y es el sucesor de Java;

Dart se ejecuta de primera mano con el navegador y gracias a esto se desarrolla junto con JavaScript a través del transcompilador: Dart2js. 

El código de este transcompilador es compilado antes de tiempo (AOT) a código nativo para plataformas, por lo que, las aplicaciones que se desarrollen en Flutter se podrán manifestar sin necesidad de un puente, y así se supondrá un mejor rendimiento para las aplicaciones. 

Qué es el lenguaje de programación Dart? | inLab FIB

Ventajas y desventajas. 

Ventajas. 

  • En este programa se puede realizar cambios en el código, donde se ven en seguida sin perder algún dato y sin tener que compilar de nuevo, a lo que se llama recarga caliente.  
  • Cuenta con un renderizado (representación gráfica) muy rápido y constante, por lo tanto, lo hace mejor en comparación a otras soluciones de otra aplicación de desarrollo móvil.  
  • Se utilizan las funciones nativas mediante lenguajes nativos lo que permitiría reutilizar códigos.  

Desventajas. 

  • Si se va a utilizar Flutter, se necesita saber previamente, el lenguaje de programación Dart. 
  • Es un programa muy nuevo, por lo que se necesita de más reconocimiento para competir con otras framework
  • Aún no está disponible para computadoras, por el momento solo se puede utilizar en dispositivos móviles. 
  •  La biblioteca que ofrece Flutter son limitadas, por lo que, si se requiere de una nueva, los programadores tendrán que crearlas por si solos. 

Pruebas. 

Las bibliotecas que hacen parte de Flutter y en compañía de Dart, han creado pruebas las cuales serían: test_ y flutter_test, donde: 

Pruebas unitarias. 

Estas son pruebas pequeñas diseñadas para ensayar la correcta conducta de un componente. Entre más código abarcan son más confiables y provechosos. Normalmente, se digita suficiente código ensayar todas las opciones posibles.  

Además, estas pruebas tienen como objetivo que al momento de crear el código se puedan automatizar, es decir, que se puedan ejecutar varias veces y así las pruebas que se realicen se caracterizaran por ser de calidad, y tendrán la funcionalidad adecuada de nuevos códigos. 

Pruebas de interfaz. 

Para estas pruebas se utiliza los widgets que se encuentran en la interfaz haciendo uso del código flutter_test, el objetivo de estas pruebas es corroborar la correcta información y comportamiento hacia el usuario. 

Estas pruebas también tienen que crear el código de manera que sean automatizantes, estas pruebas se pueden dividir en tres partes: Primero, se desarrolla una solicitud del widget a crear, codificando el objeto WidgetTester para que se reciba como un parámetro.

Segundo, en caso de que exista, se junta con el componente; por último, se reconocen los visuales en la interfaz, mediante un matcher independientemente si es para texto, widgets o iconos, con código “CommonFinders” de la biblioteca de códigos. 

¿Por qué aprender a utilizar Flutter? 

  • Ya que es un framework sencillo, se puede aprender a crear aplicaciones, sin utilizar mucho código, y es un programa muy complejo a diferencia de otros por lo que será fácil de utilizar, aprender y usar. 
  • Permite generar una compilación de manera rápida y se puede observar los resultados al momento. 
  • Gracias a que este programa se basa en crear solo widgets, será muy ventajosos para un programador.  

Fuentes

Gerardo, F. (2020). ¿Por qué Flutter es el futuro? [Fotografía]. Medium. https://dgerardoflores.medium.com/gets-por-qu%C3%A9-flutter-es-el-futuro-5384499f4be6
(S,f). Getting Started Flutter component. [Fotografía]. Wikitude Support. https://www.wikitude.com/external/doc/documentation/8.9/flutter/gettingstartedflutter.html
Víctor, D. (s,f). ¿Qué es el lenguaje de programación Dart? [Fotografía]. InLabFIB. https://inlab.fib.upc.edu/es/blog/que-es-el-lenguaje-de-programacion-dart 
(2020). Tutorial de Flutter: Aprende a desarrollar aplicaciones con el SDK de Google. [Fotografía]. Digital Guide Ionos. https://www.ionos.es/digitalguide/paginas-web/desarrollo-web/tutorial-de-flutter/ 
  
Cristancho, Felipe. (2022). ¿Qué es Flutter?. Talently blog. https://talently.tech/blog/que-es-flutter/        
Pulido, Mónica. (2019). Pros y contras de Flutter. Slashmobilty. https://slashmobility.com/blog/2019/06/pros-y-contras-de-flutter/    
Vásquez Rodríguez, Víctor. (2019). Desarrollo de aplicaciones móviles multiplataforma con Flutter. http://repositorio.ual.es/bitstream/handle/10835/8010/TFG_VAZQUEZ%20RODRIGUEZ%2C%20VICTOR.pdf?sequence=1&isAllowed=y 
Bitech Studio. (16 de marzo de 2021). ¿Qué es Flutter? Bien explicado [Video]. YouTube. https://www.youtube.com/watch?v=sqkmEp7q7L8  

Creditos

Autor: Laura Valentina Rodríguez López

Editor: Carlos Iván Pinzón Romero

Código: UCPAG2-5

Universidad: Universidad Central