Google DART Milestone 1

Cada vez está más cerca la llegada de la Milestone 1 de Google DART. Es una gran noticia escuchar esto por parte del equipo de desarrollo de DART. Significa que el lenguaje va hacia delante, está creciendo el número de seguidores y cada vez tien más difusión y éxito.

Yo comencé a utilizarlo casi desde los comienzos y ha resultado muy duro, sobre todo en los últimos meses, adaptar todo el código una y otra vez a nuevas especificaciones y a nuevos cambios importantes que afectaban a las funcionalidades más básicas. Esto se hace especialmente duro si además tienes las aplicaciones en producción.

El hecho de que hallan decidido limpiar, reorganizar y clarificar el código sin duda es algo bienvenido, a pesar del gran esfuerzo que por mi parte ha supuesto. De este modo las actualizaciones serán más suaves y más dilatadas en el tiempo, permitiendo así depurar con más control y calidad los nuevos cambios.

He leído que para final de año intentarán publicar una versión BETA. Dicho así parece algo nimio, pero tratándose de un lenguaje de programación, que como digo estoy utilizando en producción, pasar de una versión ALFA a un versión BETA es algo tremendamente importante.

A estos cambios hay que añadir, que no solo están creando un lenguaje de programación nuevo para “reorganizar el orden WEB mundial”, están creando un lenguaje que también correrá del lado del servidor y todo ello lanzado al mismo tiempo con un editor muy completo. Cuantas veces te hablan de las maravillas de tal o cual lenguaje, decides probarlo y tras descargarlo e instalarlo, te toca buscarte la vida hasta que encuentras un buen editor para dicho lenguaje. En este caso todo viene unido lo que considero ayudará más aún asu utilización.

He comentado que están creando la parte servidor. Desde el punto de vista de la programación tener el mismo lenguaje en cliente y servidor es un avance increiblemente poderoso.

  • Tu equipo de trabajo conoce el lenguaje a la perfección, trabajan con el mismo lenguaje tanto en cliente como en servidor.
  • Si algún proceso es complejo o pesado del lado del servidor, lo puedes trasladar al cliente y viceversa.
  • Los componentes se pueden encapsular y utlizar igualmente en cliente y en servidor.
  • La comunicación entre cliente y servidor la puedes hacer de manera nativa enviando directamente objetos puros del lenguaje.
  • ….
  • [ Añada aquí más ventajas ]

Espero que con la llegada de esta Milestone 1 y de las futuras versiones BETA el desarrollo siga igual de activo que hasta ahora y las mejoras se vayan sucediendo. Por supuesto, estaré encantado de seguir comentádolas y compartiéndolas con todos.

Adjunto la nota de las últimas actualizaciones publicada en el discuss de Google DART.

http://news.dartlang.org/2012/09/dart-team-updates-sep-5-18-2012.html

Summary

Dart is getting closer to reaching Milestone 1. We have been doing a lot of M1 bug-fixing across sub components. There is now a Dart web components sample available. We have a new pub package layout and the editor now comes with the possibility to auto-update.

Details

Dart Editor:

– Lots of SDK changes: dart:dom was removed and several libraries moved from dart-sdk/lib to dart-sdk/pkg.
– Run the Dartdoc tool from the Editor – see Tools > Generate Dartdoc.
– Code completion now supports the method cascades syntax (foo..and()..another()..thing()).
– New clean up to convert old optional parameters to the new optional named ones where possible.
– New refactoring to convert optional positional parameters to named.
– New “Convert Method to Getter” refactoring.
– Rename refactoring improvements – if there are potential references to a field or method, we will warn the user and display a preview dialog.
– New Quick Fix to create a library import for unresolved functions and fields.
– No longer report ‘no such method’ warnings if class defines ‘noSuchMethod()’.
– Warnings created for inferred types are now displayed only in the source itself – See them in the Problems view by toggling the ‘show informational messages’ button.
– Using the old catch syntax is now an error.
– Files view now displays whether a dart: library is client only (like dart:html) or server only (like dart:io).
– New preference to enable code folding.
– Fixed an issue where our search box would not consistently show SDK types.
– Fix for a crash related to the break-on-exceptions feature, and for a crash that could occurred when launching Dartium with breakpoints set.
– Various analysis fixes, debugger UX improvements, and performance improvements for large projects.

Dart UI [dart:html, web components]:

– Dart web components sample out on https://github.com/dart-lang/dart-web-components
– Lots of M1 bugfixing happening in dart:html

Dart SDK and build:

– lib/ directory split into lib/ and pkg/ . In the SDK, lib/ and dart: are now identical.

Pub:

– Integrate bootstrap into pub.dartlang.org and give it a basic look and feel
– Show description, authors, and homepage on package pages
– Integrate docs into pub.dartlang.org
– Work on launch process for pub.dartlang.org: talk to pcounsel, create launch, write design doc and privacy design doc, etc.
– Change package layout, and update pub, explain to the list, update our packages, and update the docs

Dart Server [dart:io, etc.]:

– Lots of M1 bugfixing.

Dart Dev Rel

– Community work has started to update synonym.dartlang.org. Thanks Bernhard, John, and Matt!
– We’ll see you at DevOxx!
– Watch the video interview with the dart2js team to learn more about compiling Dart to JavaScript


Anders Thorhauge Sandholm,


 Google+