Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Responsable .NET

    Dart : l’alternative de Google à JavaScript prête pour la conquête du Web
    Dart : l’alternative de Google à JavaScript prête pour la conquête du Web
    Dart 1.0 serait 130 % plus rapide que du JavaScript idiomatique sur V8

    Dart est prêt à entrer en production pour les développeurs Web.

    Près de deux ans après avoir devoilé Dart, le langage alternatif de Google à JavaScript, le géant de la recherche publie la version 1.0 de Dart et de son SDK.

    Pour rappel, Dart est un langage de programmation structuré pour le Web. L’objectif inavoué de Google avec ce langage 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.

    Le SDK 1.0 de Dart inclut tout ce dont les développeurs ont besoin pour écrire des applications Web structurées : un langage de programmation simple et puissant, des outils robustes et des bibliothèques complètes.

    Dart SDK intègre Dart Editor, un environnement de développement pour Dart, présenté comme « léger, mais puissant », par Google. Il dispose de la complétion de code, du refactoring, d'un débogueur, de conseils et avertissements, etc.

    Dart s'exécute soit sur une machine virtuelle native du côté serveur, soit sur un moteur JavaScript classique à l'aide du compilateur dart2js, qui convertit le code en JavaScript compatible. Google met à la disposition des utilisateurs Dartium, une version personnalisée de Chrome disposant de la machine virtuelle Dart.

    Selon Google, les performances du JavaScript généré ont été considérablement améliorées, fournissant même des résultats meilleurs que ceux du JavaScript idiomatique. Les performances de la VM seraient désormais de 42 % à 130 % meilleures que du JavaScript idiomatique sur le moteur V8.


    Le SDK de Dart dispose également d’un gestionnaire de packages baptisé « Pub », qui intègre déjà plus de 500 packages. Les développeurs Dart peuvent utiliser leurs bibliothèques JavaScript préférées grâce à la fonctionnalité de compatibilité « Dart-JavaScript interop ».

    D’après Google, les entreprises comme Adobe, drone.io et JetBrains ont déjà commencé à ajouter le support de Dart à leurs outils de développement.

    Télécharger le SDK Dart

    Télécharger Chrome avec la VM Dart


    Source : Google


    Et vous ?

    Que pensez-vous du langage Dart ? Allez-vous l'utiliser ?

    Dart représente-t-il une menace sérieuse pour JavaScript ?

    Y'a-t-il encore une place pour un nouveau langage de programmation pour le Web ?

    Dans quels domaines et pour quelles applications ?
    Vous souhaitez participer aux rubriques .NET ? Contactez-moi

    Si déboguer est l’art de corriger les bugs, alors programmer est l’art d’en faire
    Mon blog, Mes articles, Me suivre sur Twitter
    En posant correctement votre problème, on trouve la moitié de la solution

  2. #2
    Membre actif
    Mon opinion sur Dart est généralement positive. Il est temps de remplacer le Javascript par un langage qui n'a pas été écrit en quelques heures, plus orienté-objet, avec de l'héritage, du polymorphisme et de l'encapsulation.

    J'avais déjà essayé Typescript dans la même veine, et je dois dire que j'avais aimé. Cependant, vu que je suis un développeur .NET et que Dart n'est pas encore compatible avec Visual Studio, je pense que je vais rester avec Typescript pour le moment. Cependant, je pense que Dart a du potentiel, surtout s'il peut éventuellement rouler en natif.

  3. #3
    Membre expérimenté
    Citation Envoyé par Hinault Romaric Voir le message


    Allez-vous l'utiliser ?

    Certainement


    Citation Envoyé par Hinault Romaric Voir le message


    Dans quels domaines et pour quelles applications ?

    Polymer.dart et AngularJS pour faire des clients web riches, des web components et remplacer au fur et à mesure GWT.

  4. #4
    Expert confirmé
    Très content de cette nouvelle. Je l'utilise déja depuis quelques temps et vois à vue d'oeil les améliorations.

    Pour le moment je l'utilise pour le Web, avec polymer, pour avoir quelque chose de structuré et de templaté. Je vais aussi en profiter pour tester la beta d'Angular Dart.
    Je l'utilise pour un projet perso (base BrightStarDB + Web Service WCF en .NET) que je vais indiquer dans mon CV, histoire de mettre au courant les entreprises de son existence. Non ce n'est pas une simple demo technologique, les technos choisies conviennent très bien. Sur la forme, c'est une IDE sur le web.

    Je suis très heureux qu'il y ait enfin une alternative à Javascript (et ses frameworks) qui soit compilée et utilise un paradigme objet.

    Merci Google !

  5. #5
    Membre chevronné
    @plawyx :

    Polymer.dart et AngularJS pour faire des clients web riches
    Peux tu nous dire pourquoi AngularJS ?

    De mon côté je développe depuis un certain temps avec KnockOutJS et bien qu'Angular à l'air sympa, sa gestion des collections n'a pas l'air aussi poussée que Knockout.

    En revanche je trouve Knockout assez lent sur des gros ViewModel. As tu un retour sur les performances d'Angular ?
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL

  6. #6
    Inactif  
    Je n'ai pas suivi l'histoire du langage mais ça a l'air intéressant.
    Est-ce compatible avec tous les navigateurs ? La machine virtuelle tourne sur le serveur ou chez le client ?

  7. #7
    Membre actif
    Effectivement le JS se fait bien vieillot, pas mal de trouver un remplaçant que ce soit dart ou un autre.
    Ce que je n'aime pas dans js : manque de typage, débuggage abominable. J'espère que du côté débuggage plus simple le langage le permettra.

    Par contre ce qui serait bien c'est la standardisation dans les navigateur et une éxécution en natif sans passer par du js.

    J'attends de voir

  8. #8
    Membre éprouvé
    Il est temps de remplacer le Javascript par un langage qui n'a pas été écrit en quelques heures"
    Je suis dev plutôt back-end donc pendant longtemps le JS m'a rebuté. Ce n'est que depuis quelques mois que je m'y réinteresse et j'aime bien.

    Cependant, ce n'est pas parce que tu ne l'apprécie pas que tu peux le dénigrer (et par cette voie les dev JS) de la sorte...

    Je testerais Dart pour voir les possibilités. Un truc de plus à tester.

  9. #9
    Membre actif
    JS devient intéressant (je trouve pour ma part) quand on commence à utiliser des libraiies et des frameworks avancés par exemple, respectivement jquery ou angularjs.

    Sans ces librairies ou frameworks, JS serait vraiment de la préhistoire. Et c'est à partir de ces nouveautés que le développement côté client a repris de l'intérêt chez les développeurs. Mais ces librairies sont pour moi des rustines sur un langage qui a tout de même du plomb dans l'aile.

    Un langage nouveau est donc nécessaire, si c'est Dart (que je ne connais pas) il devrait aller directement à la simplification du langage et à l'ajout de fonctionnalités puissantes comme angular avec du binding, templating,... tout en gardant la souplesse propre au web et en apportant du débug (comme je le disais plus haut) et bien sûr une exécution native et standardisée sur les navigateurs (comme je le disais aussi plus haut).

    Alors est-ce que Dart correspond ?

  10. #10
    Expert éminent
    Ça serait bien que le Dart accepte une syntaxe à la JQuery.

  11. #11
    Inactif  
    Pourquoi ?
    La syntaxe de jQuery est affreuse.
    Elle oblige de plus à apprendre une syntaxe supplémentaire et à passer de l'une à l'autre, ce qui est ridicule.
    Actionscript 3 par exemple qui est très proche de javascript a des méthodes de base qui permettent des animations, transitions etc sans passer par un pseudo-langage différent.
    Si javascript avait ça avec un vrai support de classes et une interprétation uniforme au sein des navigateurs, on pourrait l'utiliser sans y coller des librairies de partout qui en font la créature de Frankenstein des navigateurs.
    Je suis désolé mais document.getElementById() c'est quand-même plus compréhensible que $("#");

  12. #12
    Membre chevronné
    Je suis désolé mais document.getElementById() c'est quand-même plus compréhensible que $("#");
    Quand tu t'en seras tapé 50 dans la journée de : document.getElementById("mid") tu vois vite l'intérêt de $("#mid").
    .o0o__St@iLeR__oOo.

    Lead Developer

    ASP.NET MVC - MCP/MCSD ASP.NET
    PHP Zend Framework / PhalconPHP
    Cordova/Xamarin IOS/Android
    Kendo UI - ExtJS - JQwidgets
    SQL Server / MySQL

  13. #13
    Expert éminent
    Citation Envoyé par Jean-Georges Voir le message
    Pourquoi ?
    La syntaxe de jQuery est affreuse.
    [...]
    Je suis désolé mais document.getElementById() c'est quand-même plus compréhensible que $("#");
    Je la trouve au contraire bien plus lisible et surtout moins verbeuse tout en n'ayant pas les inconvénients de l'obfuscation de certains langages.

    Je trainais les pieds pour me remettre au javascript mais depuis que j'ai appris le JQuery je fais cela avec le sourire.

    Les API de Dart sont sans doute d'un apport indéniable, faut voir, mais ça serait encore mieux s'ils acceptaient la syntaxe JQuery. Surtout que ce n'est pas qu'une question de syntaxe, ça simplifie beaucoup les boucles notamment avec .each(), la lecture est plus aisée.

  14. #14
    Membre actif
    J'ai jeté un petit coup d'oeil à Dart. Ca ne suffit pas mais
    - les sélecteurs semblent équivalents à ceux de jquery
    - il y a une api dart angular

  15. #15
    Expert éminent
    L'utiliser, non... enfin, non tant qu'il ne fonctionne pas sur tous les navigateurs.
    Si au moins Firefox l'utilisait, voir Safari, on aurait un débouché sympa. Mais Chrome n'est pas suffisant selon moi.
    En plus, ce navigateur n'est pas accepté dans ma boite pour des raisons de sécurité. (mais je suppose que Chromium embarque DART non ?)

    Au final, plus qu'un bon travail, je pense que google doit mettre en place un très fort lobbying pour intégrer DART au moins dans firefox(quitte a payer le développement du module) Ca amènerai a une couverture d’environ 50% des utilisateurs, ce qui est pas trop mal(et surtout, ca amène a 95% d'un type d'utilisateurs que je qualifierai d'avertis et pointilleux)
    Mon profil linked in

    Chez Adaptive, nous cherchons un dev senior python / Cloud sur Toulouse sud.
    Nous diffusons de la presse digitale à bord des avions avec les plus beaux partenaires !

    Envoyez moi un mp

  16. #16
    Inactif  
    Quand tu t'en seras tapé 50 dans le journée de : document.getElementById("mid") tu vois vite l'intérêt de $("#mid").
    Alors autant tous coder en langage Légos si le but est de faire simple et rapide plutôt que compréhensible/efficace.

    Javascript avec ses milliers de framework ayant chacun leur syntaxe est un putain de merdier. De plus, jQuery permet de faire facilement des choses compliquées (bien que non élégante), on se retrouve donc avec des pseudos développeurs ne maîtrisant pas les bases du langage et étant donc perdus lorsqu'ils doivent faire une chose pour laquelle il n'y a pas une fonction toute faite.

  17. #17
    Membre extrêmement actif
    et on peut déboguer sous Windows ou c'est toujours pas prévu.

    c'est le seul frein que je rencontre avec dart moi

  18. #18
    Expert éminent sénior
    Citation Envoyé par stailer Voir le message

    En revanche je trouve Knockout assez lent sur des gros ViewModel. As tu un retour sur les performances d'Angular ?
    Les performances d'AngularJs sont satisfaisantes pour peu que le développeur ne fasse pas n'importe quoi avec le $scope.

    C'est quoi que tu appelles un gros ViewModel ?

    D'une manière générale, cela ne sert à rien d'avoir des vues contenant des milliers d'informations, il vaut mieux garder une vue synthétique et paginer quand il y a des tables avec beaucoup de lignes (pagination côté serveur évidemment). Dans ce contexte je pense que tous les frameworks RIA se valent.
    Un problème avec Git ? Essayez la FAQ, sinon posez votre question sur le forum.



    "Toute personne croyant qu'une croissance exponentielle peut durer indéfiniment dans un monde fini est soit un fou, soit un économiste."
    Kenneth E. Boulding

    "Les richesses naturelles sont inépuisables, car, sans cela, nous ne les obtiendrions pas gratuitement. Ne pouvant être ni multipliées ni épuisées, elles ne sont pas l’objet des sciences économiques."
    Jean-Baptiste Say, Traité d'économie politique, 1803.

    "/home/earth is 102% full ... please delete anyone you can."
    Inconnu

  19. #19
    Membre expérimenté
    Citation Envoyé par stailer Voir le message
    @plawyx :



    Peux tu nous dire pourquoi AngularJS ?

    De mon côté je développe depuis un certain temps avec KnockOutJS et bien qu'Angular à l'air sympa, sa gestion des collections n'a pas l'air aussi poussée que Knockout.

    En revanche je trouve Knockout assez lent sur des gros ViewModel. As tu un retour sur les performances d'Angular ?
    voila un lien vers un comparatif AngularJS vs KnockOutJS.


    http://blog.nebithi.com/knockoutjs-vs-angularjs/

    Ce que j'aime beaucoup avec AngularJS, c'est la possibilté de déclarer ses propres classes, directives en plus de celles du Framework. De plus, il est possible de segmenter le context de la page en créant des controleurs. Cela rend son utilisation très souple et très rapide.

    En plus du data-binding, AngularJS support ajax, le routage, l'injection de dépendance, les cookies, etc..

    AngularJS est développé par Google et ils se sont mis d'accord avec la mozilla, sur le support et un développement concerté.

    Je crois que les admin du site vont créer une entrée AngularJS, mais je ne sais pas quand et où (sûrement à coté de jquery et cie)

  20. #20
    Rédacteur/Modérateur

    Si on utile dart-angular, jQuery perd beaucoup de son intérêt. On utilise beaucoup moins de sélecteurs grâces aux templates, et Dart offre plusieurs API bien utiles pouvant se substituer à plusieurs méthodes de jQuery.
    One Web to rule them all

###raw>template_hook.ano_emploi###