Saltar al contenido

Dart

lenguaje de programacion Dart

Si no muchos programadores conocen el lenguaje de programación Dart, ¿será más difícil encontrar programadores calificados?

Irónicamente, Dart hace que sea más fácil encontrar programadores porque es un lenguaje increíblemente rápido para aprender.

Los programadores que ya conocen lenguajes como Java, JavaScript, Kotlin, C# o Swift pueden comenzar a programar en Dart casi de inmediato.

Además de eso, la recarga en caliente alienta a los usuarios a jugar con Dart y probar cosas nuevas, lo que hace que aprender Dart sea aún más rápido y más placentero.

¿Qué es el Lenguaje Dart?

Dart es un lenguaje de programación optimizado para clientes para aplicaciones rápidas en múltiples plataformas. Está desarrollado por Google y se utiliza para crear aplicaciones móviles, de escritorio, backend y web.

Dart es un lenguaje orientado a objetos, definido por clases, recolectado por basura, usando una sintaxis estilo C que transcompila opcionalmente en JavaScript.

Soporta interfaces, mixins, clases abstractas, genéricos rectificados, escritura estática y un sistema de tipo de sonido.

Historia del Lenguaje Dart

Antes de empezar, un poco de historia es apropiado para que, en caso de que no estés familiarizado con Dart y sus orígenes, puedas entender mejor el resto de este post.

El lenguaje de programación Dart nació en 2011 con el modesto objetivo de arreglar la web. En otras palabras, intentar reemplazar JavaScript en el navegador. Sin embargo, fracasó miserablemente en aquel entonces.

Esto quedó claro cuando Google anunció en marzo de 2015 que no incluiría la VM de Dart en Chrome, sino que se centraría en el compilador de Dart-to-JS.

Esto le pareció un golpe mortal a Dart. Después de todo, ahora estaba relegado a un mero lenguaje de compilación a JS, sólo uno de muchos.

Para la mayoría de la gente, el lenguaje estaba en camino de desaparecer rápidamente y convertirse en una pequeña nota a pie de página en la historia de los lenguajes de programación. Pero el lenguaje sobrevivió y, al menos en Google, continuó prosperando.

En mayo de 2017, Google lanzó la primera versión alfa pública del lenguaje Dart Flutter, un marco de desarrollo de interfaz de usuario multiplataforma, que utiliza Dart para crear aplicaciones móviles tanto para iOS como para Android. Con el tiempo, Flutter empezó a ser muy popular.

Eso dio nueva vida al proyecto Dart, y con los lanzamientos de Dart 2 en agosto de 2018, y Flutter 1.0 poco después, quedó claro que Dart está absolutamente de vuelta en la ciudad, y podemos decir que va a ser una de las tecnologías de más rápido crecimiento actualmente.

Características de Dart

Veamos algunas características del lenguaje Dart:

  • Programación estructurada y flexible. Los ingenieros de Google diseñaron Dart de manera que pueda ser utilizado en proyectos de una sola persona hasta proyectos más desarrollados o complejos.
  • Lenguaje familiar y fácil de aprender. Es un lenguaje realmente sencillo y fácil de aprender. En su sitio web se pueden encontrar varios tutoriales, y también permite colaboraciones de otros desarrolladores.
  •  Permite la adaptación de nueva herramienta a cualquier navegador web. El lenguaje de programación Dart se puede ejecutar de dos maneras; en una máquina virtual (MV), o en un motor de Javascript utilizando un compilador para traducir el código. Esto le permite adaptarse a cualquier navegador.
  • Lenguaje basado en clases e interfaces o POO. Gracias a sus basamentos en clases o en la programación orientada a objetos, se facilita la encapsulación y la reutilización del código.

Versiones del Lenguaje Dart

Actualmente se han lanzado tres versiones del lenguaje Dart. Su primera versión fue durante su lanzamiento en Octubre de 2011.

Posteriormente se lanzó una segunda versión estable, la versión 2.5.0, en Septiembre de este año. Y pocos días después, se realizó la versión de prueba 2.6.0.

Por qué Flutter usa Dart

Muchos lingüistas creen que el lenguaje natural que habla una persona afecta su forma de pensar.

¿Se aplica el mismo concepto a los lenguajes de computadora? Los programadores que trabajan en diferentes tipos de lenguajes de programación suelen encontrar soluciones radicalmente diferentes a los problemas.

¿Qué tiene esto que ver con Flutter y Dart? La verdad es que tiene mucho que ver.

El primer equipo de Flutter evaluó más de una docena de idiomas y eligió el lenguaje Dart Flutter porque coincidía con la forma en que construían las interfaces de usuario.

Aquí hay una lista rápida de las características de Dart que juntas la hacen indispensable para Flutter:

  • Dart es AOT (Ahead Of Time) compilado en un código nativo rápido, predecible, que permite que casi todo Flutter se escriba en Dart. Esto no solo hace que Flutter sea rápido, sino que prácticamente todo (incluidos todos los widgets) se puede personalizar.
  • Dart también se puede compilar JIT (Just In Time) para ciclos de desarrollo excepcionalmente rápidos y un flujo de trabajo que cambia el juego (incluida la popular recarga en caliente con sub-segundo popular de Flutter).
  • Dart facilita la creación de animaciones y transiciones suaves que se ejecutan a 60 fps. Dart puede hacer la asignación de objetos y la recolección de basura sin bloqueos. Y al igual que JavaScript, Dart evita la programación preventiva y la memoria compartida (y, por lo tanto, se bloquea). Debido a que las aplicaciones Flutter se compilan en código nativo, no requieren un puente lento entre reinos (por ejemplo, JavaScript a nativo). También comienzan mucho más rápido.
  • Dart le permite a Flutter evitar la necesidad de un lenguaje de diseño declarativo separado como JSX o XML, o constructores de interfaz visual separados, porque el diseño declarativo y programático de Dart es fácil de leer y visualizar. Y con todo el diseño en un idioma y en un solo lugar, es fácil para Flutter proporcionar herramientas avanzadas que faciliten el diseño.

Los desarrolladores han descubierto que Dart es particularmente fácil de aprender porque tiene características que son familiares para los usuarios de lenguajes estáticos y dinámicos.

No todas estas características son exclusivas de Dart, pero la combinación de ellas alcanza un punto óptimo que hace que Dart sea especialmente poderoso para implementar Flutter. Tanto es así que es difícil imaginar que Flutter sea tan poderoso como lo es sin Dart.

Este es un momento emocionante para Dart. A las personas que usan Dart les encanta, y las nuevas características de Dart 2 lo convierten en una adición aún más valiosa a su arsenal de herramientas.

Si no ha usado Dart, espero que este artículo le haya brindado información valiosa sobre las novedades o diferencias de Dart, y que lo intente, y a Flutter.