Què és el llenguatge de programació Dart?

dart
Què és el llenguatge de programació Dart?
Autors:

Dart és un llenguatge open source desenvolupat a Google amb l’objectiu de permetre als desenvolupadors web utilitzar un llenguatge orientat a objectes i amb anàlisi estàtic de tipus.

Què és Dart?

Dart és un llenguatge open source desenvolupat a Google amb l’objectiu de permetre als desenvolupadors web utilitzar un llenguatge orientat a objectes i amb anàlisi estàtic de tipus (en comptes de JavaScript). Des de la primera versió estable el 2011, Dart ha canviat bastant, tant en el llenguatge en si com en els seus objectius principals. Amb la versió 2.0, el sistema de tipus de Dart va passar d’opcional a estàtic i fort, i des de la seva arribada, Flutter (expliquem què és més endavant) s’ha convertit en el principal objectiu del llenguatge.

 

Què fa a Dart especial?

A diferència de molts llenguatges, Dart es va dissenyar amb l’objectiu de fer el procés de desenvolupament el més còmode i ràpid possible per als desenvolupadors. Per això, ve amb un conjunt força extens d’eines integrat, com el seu propi gestor de paquets, diversos compiladors/transpiladors, un analitzador i formatejador. A més, la màquina virtual de Dart i la compilació Just-in-Time fan que els canvis realitzats en el codi es puguin executar immediatament. 
Un cop en producció, el codi es pot compilar a llenguatge natiu, pel que no és necessari un entorn especial per a executar. En el cas que es faci desenvolupament web, Dart es transpila a JavaScript.

Pel que fa a la sintaxi, la de Dart és molt similar a llenguatges com JavaScript, Java i C++, de manera que aprendre Dart sabent un d’aquests llenguatges és qüestió d’hores.
A més, Dart consta d’un gran suport per l’asincronia, i treballar amb generadors i iterables és extremadament senzill.
 

On puc utilitzar Dart?

Dart és un llenguatge de propòsit general, i el pots utilitzar gairebé per a qualsevol cosa:

  • En aplicacions web, utilitzant la llibreria dart:html i el transpilador per transformar el codi en Dart en JavaScript, o utilitzant frameworks com AngularDart.
  • En servidors, utilitzant les llibreries dart:http i dart:io. També hi ha diversos frameworks que es poden utilitzar, com per exemple Aqueduct.
  • En aplicacions de consola.
  • En aplicacions mòbils gràcies a Flutter.
     

Flutter

Flutter és un framework de Dart per crear aplicacions multiplataforma amb un únic codi. A diferència d’altres frameworks multiplataforma com per exemple Ionic, el codi d’una aplicació de Flutter es compila a codi natiu, de manera que el rendiment assolit és superior a aplicacions basades en web-views. A més, a diferència de React Native, Flutter no utilitza components natius, sinó que ve amb els seus propis components, anomenats widgets, de manera que la mateixa aplicació es veurà igual en qualsevol dispositiu, independentment del seu sistema operatiu o la versió. Gràcies a això, el desenvolupador no s’ha de preocupar per que el disseny de la seva aplicació es vegi malament en dispositius antics.

A més d’aplicacions mòbils, amb Flutter també es poden fer pàgines web i aplicacions d’escriptori, tot i que el suport per a pàgines web està en beta, i per aplicacions d’escriptori en technical preview, pel que qui els vulgui usar s’haurà d’esperar un temps més a què sigui estable.
A continuació, teniu diversos exemples d’aplicacions desenvolupades amb Flutter:

Per aquells interessats/des en aprendre més sobre Dart i Flutter, a continuació hi ha una llista amb diversos recursos que us poden ser útils:

  • Pàgina web de Dart, on podeu trobar tota la documentació del llenguatge i diversos tutorials. En particular, el Language Tour és molt útil per a veure una breu introducció a la sintaxi del llenguatge.
  • Dartpad, que us permet experimentar amb el llenguatge des del navegador sense necessitat d’instal·lar res (també es pot escriure aplicacions de Flutter).
  • Pàgina web del repositori de paquets, on podeu trobar tots els paquets de la comunitat.
  • Pàgines de Medium de Dart i Flutter, amb molts articles que us poden ser d’ajuda.
  • Pàgina web de Flutter, on podeu trobar la documentació del framework, i com començar a usar-lo.
  • Canal de YouTube de Flutter, amb una gran quantitat de vídeos que poden ser útils. En particular, la sèrie de videos de Widget of the Week, un seguit de breus vídeos d’un parell de minuts cadascun explicant un widget, força útil si estàs començant i no tens molt clar quins widgets existeixen i com els pots utilitzar, i la sèrie Flutter in Focus, amb vídeos més extensos explicant conceptes clau tant de Dart com de Flutter.