Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Dart devient officiellement une norme de l'Ecma
La première spécification du langage de programmation Web de Google a été publiée

Le , par Hinault Romaric

118PARTAGES

2  0 
Dart, le langage de programmation structuré pour le Web de Google est devenu une norme. L’Ecma, l’organisme en charge de la normalisation de JavaScript (dans le cadre du standard EcmaScript), a officialisé, lors de sa 107e assemblée générale, la norme Dart.

En décembre 2013, après la sortie de la version 1.0 de Dart, l'Ecma avait annoncé la création du comité technique TC52, qui devait élaborer des normes pour le langage et les bibliothèques Dart, créer des suites de tests pour vérifier la conformité avec les normes et superviser le développement futur de Dart.

Les premiers résultats des travaux de ce comité ont été validés par l' Ecma, ce qui a permis la publication de la première spécification (ECMA-408) du langage de programmation Dart.

Bien qu'un ingénieur de Google qui travaille sur Dart avait affirmé que le langage n'a pas pour vocation de remplacer JavaScript, l’objectif inavoué de Google est de mettre JavaScript à la retraite, en proposant un langage qui offre la même flexibilité, mais qui se distingue par son typage fort et optionnel.

Depuis la sortie de la version 1.0 en novembre 2013, Google a maintenu un rythme de développement effréné du langage. Dart a atteint il y a quelques jours sa version 1.5, qui introduit le support du développement d'applications Web mobiles avec le langage.

La normalisation pourrait freiner le rythme de développement de Dart, mais elle représente pour Google une grande victoire. Dart est jusqu'ici uniquement pris en charge par le navigateur Chrome de la société. Une norme devrait favoriser son adoption par les autres éditeurs de navigateur, ce qui pourrait booster l'utilisation du langage de programmation.

La première spécification Dart (au format PDF)

Source : Ecma

Et vous ?

Qu'en pensez-vous ? La normalisation de Dart va-t-elle favoriser son adoption ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Electron56
Membre à l'essai https://www.developpez.com
Le 03/07/2014 à 15:25
Je n'ai pas la même vision que ce qu'on peux lire ici,

Je suis dev Java et web (surtout javascript)
Je trouve mon compte avec Dart car il :
- Aussi "carré" qu'un Java, un avantage surtout en travail d'équipe, on limite les possibilités et avec un minimum de cadrage on a facilement un code uniformisé dans l'équipe.
- Beaucoup moins verbeux (en même temps Java...)
- Très rapide par rapport à mes expériences Java (no troll please) et même en node
- Le coup de formation d'un profil Java/Javascript -> Dart me semble très faible j'ai trouvé mes marques en quelques jours à peine.
- pubspec >>> maven >> bower
- L'avantage du client/serveur dans le même langage
- AngularDart >> AngularJS

Et j'en passe

Au départ je me suis mis à Nodejs et je n'ai pas trouvé le même confort et le même côté carré et compréhensible que je trouve dans Dart, Node me semble "quick & dirty" pour les prototypes alors que Dart me semble bien plus industrialisable et sérieux.
Mon projet perso un site et un serveur Rest les deux en Dart tourne très bien sans soucis et avec de superbes performances. *touche du bois*

Pour l'instant ce qui me rebute c'est :
- Le peu de maturité des bibliothèques mais ça viendra. ex: Pas de convertisseurs JSON <-> Object, Object <-> JSON sur plusieurs niveaux (je me l'a suis faite à la main) Le driver Mongo est peu mature. Il y a cinquante serveur Rest différents j'ai préféré me coder le mien version light.
- Le manque d'outil s'intégrant dans le Dart Eclipse, du coup ça fait bizarre d'avoir un Eclipse hyper light mais il manque des outils (comme des watcheurs pour compass) car j'aime être feignant et ne pas passer par mon terminal.
- Encore des petits manques dans le langage (ex: les enums natifs, annotations un peu light)
- Ne pas trop "tout" changer d'une version de Dart à une autre, même si c'est le risque de développer sur un langage naissant

Et j'en passe sûrement aussi

Enfin je réagis sur les remarques de pourquoi Dart est si loin de Java. A un moment partir sur des bases récentes permet d'être au goût du jour. Example pour les connaisseurs: Solr c'est pas mal mais ça vaut pas un bon Elasticsearch.
5  0 
Avatar de LSMetag
Expert confirmé https://www.developpez.com
Le 05/07/2014 à 4:33
Citation Envoyé par Kenaryn Voir le message
J'ai passé 262 heures réelles à m'auto-former à Dart (me suis chronométré à la minute près sur chaque phase d'apprentissage, arrêtant le compteur à chaque distraction, ou pause toilettes ou verre d'eau). Après avoir lu le dernier tuto Dart disponible sur le site dartlang (à l'époque de la Milestone 4), me suis retrouvé face à une page blanche et incapable de coder la moindre appli, même une simple todo-list.

Et y a des gens comme vous qui développent des projets d'envergure profesionnelle avec seulement je cite : "quelques joueurs pour prendre mes marques" ou "après la lecture d'1 ou 2 tuto"....

Comment faites-vous? Comment peut-il y avoir un tel différentiel de degré d'intelligence? Je me rends ridicule.
Ce n'est pas une question d'intelligence. Les tutoriaux de DartLang sont mauvais pour les débutants.
J'ai commencé par ça : http://soat.developpez.com/tutoriels...uel-reference/
Tu imprimes 4 par page recto-verso pour pas que ça soit imbuvable. Si tu as une expérience de programmation Web côté serveur (.NET ou Java), que tu connais le HTML/CSS et les mécanismes du DOM en Javascript, tu n'es pas trop dépaysé.

Après il n'y a pas de mystère, il faut mettre les mains dans le cambouis, en te créant un projet à toi pour réussir à faire ce que tu souhaites. Pas besoin d'un gros projet. Créer une page avec 2 onglets est déja un bon début. Tu galères plus ou moins les premiers jours et puis les automatismes s'installent.

Les développeurs Google sont très réactifs. J'en ai même un en contact privé. Et le forum StackOverflow est également très fourni en aide sur Dart.
3  0 
Avatar de Tcharl
Membre averti https://www.developpez.com
Le 02/07/2014 à 14:13
@abriotde oui, il y a dart2js ...
2  0 
Avatar de nfrancois
Membre régulier https://www.developpez.com
Le 02/07/2014 à 14:39
@abriotde Tu peux seulement compiler du dart vers du javascript ou utiliser du javascript depuis du dart.

@Tcharl dart2js sert à compiler du dart en javascript, mais pas d'utiliser du dart depuis du js
2  0 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 02/07/2014 à 19:46
Citation Envoyé par mermich Voir le message
@SylvainPV sauf que typescript n'a pas du tout pour vocation de remplacer js (et donc de s’exécuter coté client), mais simplement de générer du js. Donc l’optique est complètement différente de dart.
Oui, tout comme Dart en attendant sa VM, et tout comme CoffeeScript et les dizaines d'autres langages transpilés en JavaScript : https://github.com/jashkenas/coffees...-compile-to-JS
On peut jouer sur les mots, mais du point de vue du développeur, ils servent bel et bien à remplacer JavaScript. Personne ne va aller mettre son nez dans le JS transpilé/minifié/obfusqué derrière.

Es-tu vraiment convaincu que l'optique est différente ? Actuellement, Google est suffisamment dominant sur les parts de marché des navigateurs pour faire le pari d'une VM Dart, quoique le pari reste risqué, même avec la popularité de Chrome. S'ils cherchent à standardiser Dart, c'est parce qu'ils savent qu'ils n'y arriveront pas en solo. Si Microsoft avait gardé son monopole d'il y a dix ans, je suis quasiment sûr que TypeScript aurait lui aussi sa VM sur Internet Explorer. Ça ne serait pas la première fois qu'on verrait une techno non standard sur IE .
4  2 
Avatar de Vlozer
Membre habitué https://www.developpez.com
Le 02/07/2014 à 14:41
Citation Envoyé par abriotde Voir le message
C'est sur c'est un bon pas nécéssaire pour une généralisation. Le pas suivant serait l'implémentation sur les navigateur IE et Firefox mais je ne sais pas si Microsoft va jugé cette technologie qui ne viens pas de lui utile ou concurrente? Si Google convainc Microsoft alors des développeurs suivront pour bénéficier des meilleurs performances.
Mozilla a aussi exprimé pas mal de réticences par le biais de Brendan Eich (qui ne travaillent plus chez mozilla), donc je pense que c'est pas pour tout de suite... En fait, faudrait deja que chromimum/chrome l’implémentent, et ce sera deja un grand pas en avant...

Citation Envoyé par abriotde Voir le message
Question : Y a t'il interopérabilité entre javascript et Dart? (Possibilité d'utiliser une librairie Dart en javascript par exemple?) Je crois mais je ne suis pas certain.
Comme dit plus haut, on peut convertir l'ensemble d'un projet dart en js avec dart2js, mais c'est du code généré, donc je me demande si c'est vraiment exploitable pour etre appelé de l’extérieur (ils y a des clauses de debuggage lors de la compilation qui permettent de limiter l'obfuscation du code, mais je suis curieux quand meme)...
Dans le sens inverse, il est également possible d'interagir avec des librarie js depuis dart, moyennant quelques manipulations avec le package dart:js...

Bref dans l’immédiat, je pense que Dart intéressera avant tout ceux qui n'y connaissent rien au js, et qui on envie d'apprendre un langage scalable, facile à maintenir/ à apprendre, cohérent, confortable et riche de base...
Les expert js y trouveront peu d’intérêt, et devraient continuer à faire du js, et si ils se trouvent limité par celui-ci, gagneraient plus à s'orienter sur TypeScript ou CoffeeScript, car beaucoup plus transparent...
1  0 
Avatar de air-dex
Membre expert https://www.developpez.com
Le 02/07/2014 à 18:01
Assurément un grand pas en avant pour Dart qui se positionne de facto comme le challenger numéro 1 de JavaScript. Et c'est un challenger très dangereux.

La succession de JavaScript s'oriente autour de deux pistes :
  • JS devient "l'assembleur du Web" (ou plutôt son bytecode) et tous les programmes écrits en langages non JS sont "compilés" / traduits en JS avant leur exécution. C'est la piste prise par tous les langages cherchant à remplacer JS, à commencer par TypeScript et CoffeeScript (qui est en train de disparaître des écrans radar des devs Web).
  • On part sur un langage ayant son propre moteur pour exécuter son code en natif (d'un point de vue navigateur). C'est la voie choisie par Dart.


La première piste est une solution facile à mettre en place, mais elle pose un problème de performance. Ce que l'on gagne en langage, on le perd en performances. JavaScript n'étant pas non plus une panacée comme peut l'être l'Assembleur, il n'a donc rien à craindre de ces langages là.

Par contre la seconde piste est plus dangereuse pour JS. Contrairement à la première solution, il n'y a pas de pertes de performances. Faire un moteur pour son langage est sans doute plus fastidieux. Mais au final on peut se retrouver avec une vraie alternative au JS capable de prendre sa place car meilleur en tous points. Bien sûr il faudra pour cela que les nouveaux moteurs soient aussi optimisés que les moteurs JS. Mais cela viendra au cours du temps et de l'adoption du langage.

Google a choisi la bonne voie en faisant Dart. JS devrait être abandonné en masse dès que les navigateurs auront tous des moteurs Dart. Et s'ils n'ont pas de moteurs Dart c'est pas grave. dart2js fera tourner du Dart en mode dégradé (d'un point de vue perfs car obligation de passer par le JS).
4  3 
Avatar de zencorp
Membre habitué https://www.developpez.com
Le 03/07/2014 à 11:02
Pour ma part bien que je trouve le projet Dart ambitieux est vraiment intéressant, je me pose également la question pourquoi ne pas simplement intégrer une VM java directement plutôt que de repartir sur une toute autre base. On est plus dans une approche GWT avec Dart il me semble.

Mais cela reste intéressant.
2  1 
Avatar de LSMetag
Expert confirmé https://www.developpez.com
Le 03/07/2014 à 18:29
Je travaille actuellement sur un gros projet en Dart + Polymer Dart. Je me suis formé tout seul en lisant 1 ou 2 tutoriaux.
Je suis pour le moment assez satisfait.

Dart, c'est Javascript (même mécanismes, portages de frameworks JS), sauf que c'est compilé, a une syntaxe proche des langages serveurs avec un typage optionnel, beaucoup de plugins implémentables facilement avec un mécanisme à la Maven, et la possibilité de débugguer en Just in Time, contrairement à ce que certains ont dit.

Les performances en natif explosent Javascript. La conversion en Javascript donne un code assez potable, dont les performances n'ont rien à envier à du JQuery.
La communauté est déja très active, tout comme les développeurs du langage.

Dart permet aussi de travailler en mode serveur comme Coffee Script. Mais je n'en vois pas trop l'utilité, vu sa syntaxe, à part s'il est réellement plus performant qu'un langage serveur.
Java n'est pas un langage client et ne brille pas par ses performance par rapport à Javascript ou Dart.

Dart est pour moi un gros coup de pouce, étant désarçonné par le mode de fonctionnement de Javascript. Je ne supporte pas l'absence de compilation, l'absence de débuggage et le typage implicite. Je perds un temps fou, moi qui suis habitué aux langages serveur.

Si les 2 langages deviennent des standards (moi ça ne me dérange pas), ça fera 2 langages clients à faire prendre en charge par les navigateurs au lieu d'un. Mozilla et cie risquent de ne pas apprécier cette charge de travail supplémentaire, mais ça pourrait permettre aux mondes client (Javascript) et serveur de se rejoindre. Car la plupart des développeurs serveurs sont des quiches en JS, qu'ils détestent. Et l'inverse peut être vrai également. L'accès au "client" sera facilité.
On ne sait pas encore si ce sera le navigateur qui implémentera son "décodeur" Dart ou si ce sera la VM de Google. Si la VM Dart est également standardisée et Open Source, alors là je dis d'accord.
1  0 
Avatar de abriotde
Membre expérimenté https://www.developpez.com
Le 02/07/2014 à 14:05
C'est sur c'est un bon pas nécéssaire pour une généralisation. Le pas suivant serait l'implémentation sur les navigateur IE et Firefox mais je ne sais pas si Microsoft va jugé cette technologie qui ne viens pas de lui utile ou concurrente? Si Google convainc Microsoft alors des développeurs suivront pour bénéficier des meilleurs performances.

Question : Y a t'il interopérabilité entre javascript et Dart? (Possibilité d'utiliser une librairie Dart en javascript par exemple?) Je crois mais je ne suis pas certain.
2  2