Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
L'asynchronisme en Dart existe depuis bien longtemps et etait deja tres simple à utiliser grace aux Stream/Future, surtout coté utilisateur.
Là c'est juste l'ajout de certains mot clées qui permettent d'avoir un code plus propre (eviter d'avoird 40 imbrication d'exp lambda dans certaines situations, simplifier la creation des retours des methode asynchrone...)
C'est tres largement assumé par la DartTeam. Et ça me desole un peu qu'Anders Hejlsberg n'en fasse pas de meme pour typescript... :/
Quand je vois ces deux images, deux constats :
- la première montre simplement qu'il n'y a absolument aucun intérêt à développer en dart, car la lecture est très difficile - donc la maintenance (ce qui coûte le plus cher aux entreprises) quasiment impossible (imaginez 10 fois plus de code comme ça pour une application entière)
- la seconde montre simplement que... bah ça existe déjà en Php, en Python, en CSharp et en C++. Pourquoi ré-inventer la roue ? J'aimerais comprendre les avantage supplémentaires par rapport aux autres langages. S'il n'y en a pas et que c'est juste pour le fun histoire de connaître un langage en plus, ça n'a strictement aucun intérêt du point de vue d'une entreprise.
.I..
Qu'est-ce que tu trouves difficile ? La programmation asynchrone ? ca n'est en rien spécifique à Dart ...
La réponse la plus évidente : l'écosystème JS (node/io.js, web browser)
Sinon à ma connaissance (et n'étant pas vraiment au fait de ces langages) :
- Python n'a pas de contrôle du type
- C++ ne permet pas de s'affranchir du type (ou de l'inférer)
- Les fonctions anonymes/lambda sont "récentes" en C++
- Les lambdas en Python sont limitées
- PHP n'a de généricité
Sinon avec ce genre de philosophie, on inventerait plus grand chose ...
Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
Ceylon : Installation - Concepts de base - Typage - Appels et arguments
ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
Une solution vous convient ? N'oubliez pas le tag
Signature par pitipoisson
Je pense qu'il voulait simplement dire que le code était plus concis et de ce faite plus lisible que le gros pâté en dart.
Je n'ai jamais dit que c'était difficile, j'ai dit que la "lecture était difficile", énorme nuance.
Je pense que tu es une personne intelligente, mais il semble te manquer un truc qui manque souvent aux personnes intelligentes : la capacité d'imaginer que beaucoup de gens ne comprendront pas aussi facilement qu'eux le code.
Si je dis que le code est difficile à lire, ça n'est pas forcément pour moi, c'est avec du recul, la maintenabilité du programme : tout nouveau développeur aura énormément de mal à comprendre facilement et rapidement énormément de lignes de codes asynchrone. Et quand on voit le turnover énorme en entreprise, il faut toujours imaginer cela - c'est peut être ce qui est devenue une mauvaise habitude de ma part : lorsque le développeur qui a écrit ça partira, est-ce que le suivant pourra comprendre rapidement ? La réponse est : neuf chance sur dix : "non". Toi, oui, tu es le un sur dix Mais pas les neuf autres.
Python n'a pas de contrôle du type ? Je te laisse te googler...
C++ ne permet pas de s'affranchir du type (ou de l'inférer) Je te laisse te googler...
Les fonctions anonymes/lambda sont "récentes" en C++ WTF
Les lambdas en Python sont limitées
PHP n'a de généricité
Comme dans une autre conversation, j'ai perdu trop de temps à vouloir m'exprimer, ça ne donne pas une image positive, et je n'arriverai pas convaincre - même si je donne des éléments concrets...
Et l'écosystème JS...
La seule chose qui intéresse tous les développeurs JS du moment c'est : "c'est à la mode, ça m'intéresse". Vive bower, node, interact, nosql (et pas prononcer jquery c'est plus à la mode).
Ca passera d'ici quelques années. Seuls les langages dignes de ce nom survivront. D'ailleurs pourquoi Google essaie de rajouter tout ce qui manque à JS ? Regarde tout ce qui est ajouté au fur et à mesure... c'est qu'il a de gros manques, et que ça coûte cher à une entreprise de maintenir du JS. Ils implémentent en réalité ce que le meilleur langage existant, C++, a déjà. Même chose pour tous les mauvais langages qui deviennent connus (regarde toutes les nouveautés et implémentations de Php : ils en ont marre des problèmes de typage, ils ajoutent la possibilité de préciser le type des arguments, ils en on marre du manque d'héritage multiple, ils créent les traits (au passage, quelle horreur, l'écriture des traits omg...), et je pourrais te citer chaque évolution de Php : c'est combler un manque qui existe déjà dans la plupart des bons langages). Donc quelque part, faire évoluer un langage pour qu'il ressemble à ce qui existe déjà depuis des années, c'est simplement réinventer la roue. Je suis bien content qu'à l'IUT d'Aix, ils forcent énormément sur le C++, parce qu'une fois que tu comprends ce langage, tous les autres sont faciles (voire très faciles) à apprendre.
Donc désolé pour ne plus suivre le fil de cette conversation après ce post, mais tu dois avoir moins de 30 ans, car sinon tu verrais qu'on ré-invente systématiquement la roue pour faire les mêmes choses et je me lasse d'expliquer que je trouve inutile de réinventer la roue (sous prétexte de nouveauté) systématiquement.
.I..
C'est bien ce que j'entendais également
De mon expérience (et une fois de plus, n'ayant pas encore atteint le cap fatidique des 30ans, il la prendre avec des pincettes), tant qu'on explique aux gens, ils finissent par comprendre.
Surtout apprendre une API pour un développeur ne pose généralement pas des masses de problèmes.
Après je te l'accorde, les entreprises "gaspillent" rarement leurs temps àformerexpliquer aux nouveaux.
En fait on maintient déjà énormément de lignes de code asynchrone avec les moyens du bord : API graphique, dialogues réseaux, etc.
Ceci étant, cela n'est encore et toujours pas spécifique à Dart. Certains nesaventconnaissent pas la programmation parallèle, ca ne fait pas des langages qui le permettent de mauvais langages.
Je n'ai rien trouvé dans le documentation de Python mais bien quelques documents de travail. Une source officielle du support du "static typing" ?
Je connaissais pas l'inférence de type. Mais cela reste "récent". Et quid du typage dynamique ?
2011 c'est une broutille. Ca correspond exactement à l'annonce de Dart.
Les lambdas sont limités à une seule expression (https://docs.python.org/3/reference/...ns.html#lambda). Bon ok, ce n'est pas peut-être pas un mal, mais c'est une limitation en soit. A la rigueur, je préfère ne pas avoir de lambda mais des "pointeurs" de fonction.
Comme je le précisai, c'était du maigre haut de mes connaissances de ces langages que je ne connais guère.
J'avoue que l'écosystème n'est pas très stable. Mais l'arrivée de bower, karma, npm, etc. montre que la technologie gagne en maturité. Rien ne dit si node/io survivront mais le JS dans les navigateurs risque de durer encore bien longtemps !
On est vendredi ? :troll:
Plus sérieusement, le C++ s'inspire également des standards du moment. Et je pense également que c'est un bon langage (mais que je connais que trop peu, surtout avec les grosses évolutions qu'il a connu).
Mais il ne fait pas le café. Sinon il n'y aurait pas autant de langages différents.
Même avant 30ans on peut avoir connu beaucoup de choses (je dis pas que c'est mon cas ). Je vois les choses différemment : je trouve intéressant de s'améliorer systématiquement.
Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
Ceylon : Installation - Concepts de base - Typage - Appels et arguments
ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
Une solution vous convient ? N'oubliez pas le tag
Signature par pitipoisson
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager