Dart es un lenguaje open source desarrollado en Google con el objetivo de permitir a los desarrolladores utilizar un lenguaje orientado a objetos y con análisis estático de tipo. El lenguaje Dart ha ido evolucionando desde su creación en 2011 con tres versiones mayores. En noviembre de 2013, dos años después de su anuncio inicial, se lanzó la primera versión estable del lenguaje de programación Dart. A día de hoy, febrero 2024, la versión oficial es Dart 3.2.
¿Qué hace a Dart un lenguaje especial?
A diferencia de muchos lenguajes, Dart se diseñó con el objetivo de hacer el proceso de desarrollo lo más cómodo y rápido posible para los desarrolladores. Por eso, viene con un conjunto bastante extenso de herramientas integrado, como su propio gestor de paquetes, varios compiladores/transpiladores, un analizador y formateador. Además, la máquina virtual de Dart y la compilación Just-in-Time hacen que los cambios realizados en el código se puedan ejecutar inmediatamente. Una vez en producción, el código se puede compilar en lenguaje nativo, por lo que no es necesario un entorno especial para ejecutar. En caso de que se haga desarrollo web, Dart se transpila a JavaScript.
En cuanto a la sintaxis, la de Dart es muy similar a lenguajes como JavaScript, Java y C++, por lo que aprender Dart sabiendo uno de estos lenguajes es cuestión de horas. Además, Dart consta de un gran apoyo para la asincronía, y trabajar con generadores y iterables es extremadamente sencillo. Dart es un “client-optimized language for fast apps on any platform” que enseguida veremos que significa ya este foco orienta el diseño del lenguaje.
Escenarios de uso de Dart
Dart es un lenguaje de propósito general, y lo puedes utilizar casi para cualquier cosa:
- En aplicaciones web, utilizando la librería de arte: html y el transpilador para transformar el código en Dart en JavaScript, o utilizando frameworks como AngularDart.
- En servidores, utilizando las librerías de arte: http y arte: io. También hay varios frameworks que se pueden utilizar, como por ejemplo Aqueduct.
- En aplicaciones de consola.
- En aplicaciones móviles gracias a Flutter.
El papel fundamental de Flutter
Desde su llegada, Flutter se ha convertido en el principal objetivo del lenguaje. Flutter es un framework de Dart para crear aplicaciones multiplataforma con un único código. A diferencia de otros frameworks multiplataforma como por ejemplo Ionic, el código de una aplicación de Flutter se compila a código nativo, por lo que el rendimiento alcanzado es superior a aplicaciones basadas en web-views. Además, a diferencia de React Native, Flutter no utiliza componentes nativos, sino que viene con sus propios componentes, llamados widgets, por lo que la misma aplicación se verá igual en cualquier dispositivo, independientemente de su sistema operativo o la versión.
Lea también: Contenido del Curso de Contabilidad
Cronología y futuro
Cuando Dart nació no teníamos ninguna “killer application” con lo que la adopción era muy baja. Hasta que apareció Flutter. El futuro de Dart parece ser bastante prometedor. Además, su integración con Flutter para el desarrollo de aplicaciones móviles ha aumentado su popularidad y relevancia en el mundo de la programación.
Lea también: Emitir facturas antiguas correctamente
Lea también: RFC y Fecha de Inicio de Operaciones: Todo lo que debes saber
