Dart : Google sort son nouveau langage

Le , par Idelways, Expert Confirmé Sénior
Mise à jour du 17/02/2012, par Hinault Romaric

Google vient de publier une préversion (technical preview) pour les développeurs de Dartium, un navigateur à base de Chrome qui introduit la machine virtuelle Dart.

Dart est présenté par Google comme un langage de programmation structuré pour le Web, basé sur les classes et optionnellement typé.

L’objectif inavoué de Google est de mettre JavaScript à la retraite en proposant un langage qui offre la même flexibilité que celui-ci, mais qui se distingue par son typage fort et optionnel.

Dart s'exécute soit sur une machine virtuelle native du côté serveur ou sur un moteur JavaScript classique à l'aide d'un compilateur qui convertit le code en JavaScript compatible avec Chrome, Safari 5+ et Firefox 4+, etc.

Cette préversion permettra d’exécuter des programmes Dart directement sur la machine virtuelle Dart incluse dans le navigateur Chrome, en évitant une étape de compilation séparée pour convertir le code.

Google a l’intention, après plusieurs tests de la VM Dart, de l’inclure dans les futures versions de son navigateur Chrome.

Pour l’instant, le langage bénéficie uniquement du support de Google, et aucun constructeur de navigateur n’a encore indiqué son intention de supporter Dart. La firme espère néanmoins atteindre un certain stade de maturité avec Dart avant de le soumettre à un processus de normalisation.

Dartium est disponible pour les ordinateurs Mac et Linux. Une version pour Windows sera disponible dans les jours à venir.

Télécharger Dartium

Source : Google

Dart : Google dévoile la nature de son JavaScript-killer
Un langage flexible et optionnellement typé, conçu pour les hautes performances

Mise à jour du 10 octobre 2011 par Idelways

Les rumeurs viennent d'être confirmées au sujet du nouveau langage de programmation de Google. L'entreprise a officiellement dévoilé la nature et les ambitions de son langage Dart à la conférence Goto qui se déroule au Danemark.

Les spéculations autour du « langage de programmation structurée pour le Web » ont été déclenchées par une discrète annonce sur le planning de cette conférence. Puis, elles ont été confortées par la fuite d'un email interne de Google (lire ci-devant)

Une première Preview sur le site officiel du langage met à disposition des développeurs des outils open source de création d'applications, des exemples de code, la documentation de sa bibliothèque standard et un brouillon des spécifications du langage.

Dart est défini en tant que « langage basé sur classes et optionnellement typé », sur l'annonce officielle par Lars Bak, le créateur du moteur JavaScript V8 et membre de l'équipe Dart.

Logo de Dart


Les objectifs de la conception du langage visent à créer un langage « structuré, mais flexible », qui semble « familier et naturel pour les développeurs, et faciliter ainsi son apprentissage ».
Enfin (et surtout), Dart est amené à afficher de hautes performances sur tous les navigateurs et environnements modernes, « à partir des périphériques portables jusqu’à l'exécution du côté serveur », confirme l'ingénieur émérite de Google.

Dart se distingue du JavaScript, dont il a l'ambition de supplanter, par son typage fort, mais optionnel. Les développeurs peuvent donc coder avec la même flexibilité qu'en JavaScript et ajouter le typage par la suite, voir se faciliter cette tâche à l'aide d'outils d'analyse et d'inférence de types.
Dart suit un modèle objet assez complet et plus classique que celui du JavaScript (qui est basé sur le prototypage). Il supporte notamment les concepts d'implémentation d'interfaces et d'héritage simple.

Dart s'exécute soit une machine virtuelle native du côté serveur ou sur un moteur JavaScript classique à l'aide d'un compilateur qui convertit le code en JavaScript compatible avec Chrome, Safari 5+ et Firefox 4+ (d'autres navigateurs suivront).

Sans surprise, les scripts Dart peuvent cohabiter avec le code HTML à travers la balise script qui prend le type « application/dart », qui est par la même occasion le mime-type du langage. La fonction main() du style C est obligatoire.

Bien qu'il soit monothread, la programmation concurrente est dès le départ au centre des préoccupations de l'équipe Dart. Le langage supporte les « isolations » qui ont chacune leurs propres mémoire et thread de contrôle. Aucun état n'est partagé entre les isolations qui sont créées par spawning (des fonctions qui chargent et exécutent des processus fils).

L'équipe de Dart envisage d'intégrer la machine virtuelle de Dart au navigateur Chrome, mais aucune date n'est avancée.

Et en voici le traditionnel Hello World !

Code :
1
2
3
4
 
main() { 
  print('Hello World'); 
}

Site officiel : dartlang.org
Spécifications du langage

Source : annonce officielle sur le blog Googlecode

Et vous ?

Alors, vous comptez vous y mettre ?
Que pensez-vous du langage Dart ?

Google souhaite-t-il pousser JavaScript vers la sortie avec Dart ?
Son nouveau langage de programmation Web

Mise à jour du 14 septembre 2011

Le langage de programmation Dart sur lequel Google met les dernières retouches avant sa présentation en octobre devrait succéder au langage JavaScript, afin de pallier aux « défauts fondamentaux » qui ne peuvent être corrigés en faisant simplement évoluer le langage.

Des défauts qui ralentissent le développement d'applications Web complexes, devenu « beaucoup trop difficile » et un véritable « labyrinthe déroutant ».

Ce serait en tout cas les ambitions de Google à en croire le contenu fouillé d'un email supposé provenir du chercheur émérite Mark S. Miller et adressé à de nombreux collègues de Google.
Un mail qui remonte au 16 novembre 2010 et dont le texte intégral peut être retrouvé sur Github.

L'auteur de l'email évoque deux stratégies pour pousser JavaScript vers la sortie et le suppléer par le langage « Dash » (qui aurait changé de nom pour devenir Dart). Un langage « destiné à maintenir la nature dynamique de JavaScript, mais avec un meilleur profil de performance et qui se prête mieux au “tooling” sur les grands projets ».

La voie Dash ou Dart, « très risquée, mais d’une grande valeur ajoutée », implique, toujours d'après l'email, que le langage soit open source et soutenu pour qu'il soit supporté sur d'autres navigateurs.

Le langage — dans la vision de Mark S Miller — ne devrait pas (du moins en un premier temps) faire plus que ce que JavaScript permet de réaliser au niveau du navigateur, puisqu'il propose qu'un compilateur de code Dash vers JavaScript soit mis à la disposition des développeurs pour cibler les navigateurs qui ne le prennent pas en charge nativement.

Google pourrait donc tenter d'accélérer l'adoption (non native) de son langage en prenant à sa charge la création de plug-ins pour les autres navigateurs. Il n'en est en effet pas à sa première intervention comme en témoigne l'épisode « Chrome Frame », pour Internet Explorer.

Dash pourrait donc être utilisé comme le langage open source CoffeeScript qui compile en JavaScript, avec le but ultime « de remplacer JavaScript comme une lingua franca pour le développement sur la plateforme Web ouverte »

Entre-temps, Google maintiendra une stratégie que Miller appelle « Harmony », en continuant de travailler conjointement avec le TC39 (le corps de standardisation d'EcmaScript) pour faire évoluer JavaScript.

Mais toute cette initiative, destinée à faciliter le développement Web ouvert et améliorer ses performances, serait surtout motivée par la peur des écosystèmes d'Apple et d’autres plateformes fermées vers lesquels « dérive le cyclone d'innovation ».

« L'émergence de plateformes alternatives impérieuses, comme iOS signifie que la plateforme Web doit se montrer compétitive, non seulement sur le fond, mais aussi sur sa portée », estime Mark S Miller, avant de poursuivre : « JavaScript tel qu'il est aujourd'hui n’est pas une solution viable à long terme et quelque chose doit changer ».

Source : L'email sur Github

Et vous ?

Trouvez-vous, comme le supposait Mark S. Miller, qu'il est réellement beaucoup trop difficile de coder des applications Web complexes en JavaScript ?
Êtes-vous prêt à développer en Dart ? Sous quelles conditions ?

Dart : Google prépare un nouveau langage de programmation structurée pour le Web
Qui sera dévoilé à la conférence Goto

Quelques jours après que l'enregistrement de plusieurs noms de domaines ait vendu la mèche, c'est désormais officiel : Google travaille sur un nouveau « langage de programmation structurée pour le Web ».

« Dart » sera présenté à la keynote d'ouverture de la conférence GOTO Aarhus le 10 octobre prochain, et c'est à-peu-près tout ce que l'on sait d'officiel sur ce mystérieux langage.

Deux célèbres pionniers du développement, qui en seraient les principaux instigateurs, présenteront la nouvelle création du géant américain, présent partout sur le Web, mais beaucoup moins entre les doigts des codeurs Web hormis à travers les API et quelques outils comme l'excellent Google Web Toolkit.

Il s'agit de Gilad Bracha, un vétéran de SAP et Sun, et coauteur des spécifications du langage Java, ainsi que Lars Bak, le créateur de moteur JavaScript V8, entre autres.

Les conférenciers ont tous les deux une expérience conséquente avec le langage Smalltalk et Dart pourrait en être fortement inspiré.
On s'attendra donc a priori à un langage interprété qui piétinera les plates-bandes de Python et JavaScript, deux langages de programmation plébiscités chez Google.

Parmi les autres spéculations qui vont bon train sur le Web, on retiendra que Dart pourrait n'être qu'une extension du V8, ou un nouveau souffle donné au langage Newspeak inventé par Gilad Bracha, qui aurait été amélioré par Google et débarrassé de son nom à connotation négative : la novlangue imposée par le régime totalitaire de l'Océania pour éliminer toute expression subversive dans le roman 1984 de George Orwell.

Mountain View dispose d'un langage de programmation orienté-système appelé Go, qui est considéré, en dépit de la croissance pénible de sa popularité vacillante, comme une alternative crédible au C++ et à Java.

À noter que Google a détenu quelques temps une technologie qui porte le nom DART, issue de l'acquisition de Doubleclick en 2007. « Dynamic Advertising Reporting & Targeting » a été abandonnée l'année passée.

Quoi qu'il en soit, le plus grand défi qui s'opposera à Dart sera d'apporter une véritable valeur ajoutée dans un paysage Web saturé de langages aussi bons que diversifiés.

Source : Site officiel de la conférence Goto Aarhus

Et vous ?

Quel type de langage attendez-vous (ou souhaitez-vous) de Google ?
Y'a-t-il encore une place pour un nouveau langage de programmation pour le Web ?
Dans quels domaines et pour quelles applications ?
Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de LSMetag LSMetag
http://www.developpez.com
Membre Expert
le 31/05/2013 10:43
Citation Envoyé par xelab  Voir le message
Ok, c'est déjà pas mal. Le problème c'est toujours de faire le lien entre le code généré et le générateur et pour moi c'est une perte de temps potentielle (cela nécessite toujours de vraiment apprendre le javascript, du coup plus besoin de Dart si on connaît bien le javascript ). Il faut dire que Coffeescript me convient tout à fait et couplé à un framework comme Angular, je ne vois pas ce que Dart m'apporterait de plus à part une couche d'abstraction supplémentaire (tant que ce n'est pas natif bien sûr, encore que la syntaxe de Dart est moins agréable que le Coffeescript à mon goût).

Il y a une grande différence entre connaître le Javascript et maîtriser le Javascript.
Me concernant, je connais le Javascript, j'ai passé des mois entiers dessus, mais je ne le maîtrise toujours pas. Et j'ai donc des difficultés pour la moindre petite chose. Pour debugger du Javascript, il faut bien connaître son comportement, car même avec une console, les erreurs ne sont pas explicites et tout ce qu'on a, c'est simplement un bug, pas un crash.

Mon but, c'est justement de ne plus avoir à me préoccuper du Javascript, comme je n'ai pas à me préoccuper du bytecode généré par d'autres langages serveurs. Comme dit par une personne ici, Javascript, c'est un peu l'assembleur du Web.
Offres d'emploi IT
Ingénieur développeur base de données h/f
CDI
cts - Rhône Alpes - Lyon (69000)
Parue le 18/07/2014
Développeur web magento h/f
CDI
EXPERTS - Provence Alpes Côte d'Azur - Sophia-Antipolis
Parue le 18/07/2014
Consultant hr access
CDD
Easy Partner - Rhône Alpes - Lyon (69000)
Parue le 15/07/2014

Voir plus d'offres Voir la carte des offres IT
 
 
 
 
Partenaires

PlanetHoster
Ikoula