Python est utilisé car il gère mieux les variables (tuples, liste, etc.)
Tu entends quoi par là ? Si tu parle du système de type, vendredi est terminé.
il est plus précis en terme de calcul [numpy]
Python est touché par les même problèmes que le C pour le calcul en virgule flottante si numpy a des classes pour gérer ça, il faut comparer avec des bibliothèques pour gérer ça en C.
En outre, son avenir est certain, par rapport à Java par exemple.
Le C et le C++ (c'est de ça dont il voulait parler), c'est des normes ISO. En terme de pérennité on ne fais pas mieux.
Juste pour rappel, Blender utilise Python… A mes yeux c'est une référence.
Blender est tout de même largement écris en C et C++ (je présume que c'est pour une question de performance en plus alors que python sert aux plugin). Je ne suis pas sûr que ce soit un bon exemple car c'est trop différent comme application.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Il attaque déjà une base qui doit être en C ou C++ et utilise une interface graphique en C (Gtk), le code glue entre les deux ne devrait pas consommer particulièrement de ressources.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Mais encore faut-il que les couleurs soient parlantes.
La couleur, il n'y en a qu'une l'autre c'est la couleur du fond. Les multiprises à boutons utilisent le même code (allumé = en marche) avec pour la majorité du rouge comme couleur.
À mon avis là où il y a un recul d'un point de vu ergonomique c'est que la surface sur la quelle cliquer est bien plus petite.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Tu n'a jamais allumé (ou éteins) tes radiateurs ? C'est identique le | des fois rouge c'est ON, le 0 c'est off. Tu clique à gauche pour allumer et à droite pour éteindre.
Je ne dis pas que c'est mieux que ce qu'il y avait avant, je ne me sert pas de ce genre de bascule, mais ça ne me semble pas si anti-ergonomique que ça.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Posté par barmic .
En réponse à la dépêche jQuery 2.0.
Évalué à 2.
Avec un environnement qui a le même niveau de fonctionnalité ? (c'est à dire un gestionnaire de fenêtre hyper-minimaliste, un navigateur simpliste, pas de gestion du wifi si je ne m'abuse, etc).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Alors là, pour le coup, ça ne change strictement rien, ça dépendra essentiellement de l'état interne de ton visiteur (est-ce qu'on peut appeler le visiteur en même temps sur la branche droite et la branche gauche, pour reprendre l'exemple) et pas de la manière dont tu as implémenté ton visiteur (template ou polymorphisme).
J'ai lancé ça un peu comme ça. Mais tu peut avoir des méthodes sans effet de bords dans la version template, alors que dans la version polymorphe tu es obligé d'en avoir.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
python est-il un dérivé de Java ?
scala fait de l'héritage dynamique, les traits et de l'inférence de type, rien que ça c'est extrêmement différent de ce que propose Java (ou même ce qui est dans les cartons pour Java8 ou plus loin encore).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Ben je préfère la première version dans ce cas, beaucoup plus lisible et compréhensible.
Je ne dis pas le contraire. C'est juste que je ne trouve pas que c'est considérablement plus complexe au vu de la différence de complexité entre l'implémentation polymorphe et template.
Là où ça deviens vraiment plus complexe c'est si tu souhaite paralléliser le calcul des sous résultats.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Sur le même principe on a eut Scala dérivé de Java. C'est assez populaire mais la syntaxe en est quand même bien lourde, ce qui me fait sans hésiter retourner vers un langage fonctionnel dès que je le peux (Ocaml, Lisp ou Haskell).
J'ai présumé, comme d'autres, que les deux phrases, se suivant au sein d'un même paragraphe étaient liées.
Je ne ferrais pas de remarques sur les concepts aux quels tu fais références et qui ne sont pas liés à Java.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Et Java est inspiré de C++, lui même inspiré du C. Quasiment tous les langages ont des inspiration. Tu as même une partie spécialement pour ça sur Wikipedia. Ce n'est pas parce que Java est l'un des inspirateur de scala que la syntaxe de scala doit être proche de celle de Java (elle ne l'est pas en fait).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
vector<int>::iteratormyIntVectorIterator=myIntVecor.begin();while(myIntVectorIterator!=myIntVector.end()){// bla blamyIntVectorIterator++;}
Et d'ailleurs il devient plus aisé de remplacer le corps du for par une méthode. L'inconvénient (enfin si le corps du for est trop long) est qu'on voit moins vite l'itération, même si on s'en doute fortement.
Je préfère personnellement la boucle for quitte à la mettre sur 3 lignes (je ne touche pas aux noms, ni n'ajoute de typedef, mais je le fais presque systématiquement) :
for(vector<int>::iteratormyIntVectorIterator=myIntVector.begin();myIntVectorIterator!=myIntVector.end();myIntVectorIterator++){// bla bla}
L'avantage c'est qu'on voit qu'il s'agit d'une itération complète. On sait qu'il s'agit d'un foreach, ça ne laisse pas de place à l'imagination.
Après faut être un peu réaliste et plutôt utiliser les outils standards qui sont à disposition :
Parce que bon, le coup de forcer ses types à être polymorphiques pour utiliser la RTTI ou de la réimplementer avec des énums, c'est un peu limite quand même.
Je pense que la question c'est plutôt comment s'est implémenté en boost.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
Pas uniquement en fait, ça permet aussi d’éviter l'ajout ( voir l'utilisation ) de méthodes virtuelles et les problèmes associés à celles-ci : ABI break, performance du à la vtable.
Merci, là oui ça présente un intérêt (pas la version avec rtti).
La deuxième raison d'utilisation de ce pattern est une raison de coupling entre l'algorithm ( le Visitor ) et l'objet lui même.
L'algo peut être instancié de manière différé, dérivé de manière autonome, ou encore avoir une association N <-> M avec l'objet en question.
Je n'ai vraiment pas du être clair, c'est la version template que je remet en cause pas le paterne.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Qtisation
Posté par barmic . En réponse à la dépêche Ubuntu 13.04 Raring Ringtail. Évalué à 2.
Dommage, c'est encore du python derrière à ce que je vois :
Si on parle bien de ça https://code.launchpad.net/~super-friends/friends/trunk
Le code est là : http://bazaar.launchpad.net/~super-friends/friends/trunk/files
et il faut aller dans le dossier friends pour trouver le code en lui même (le reste sert à l'empaquetage) http://bazaar.launchpad.net/~super-friends/friends/trunk/files/head:/friends/
Si tu veux jouer tu lance :
Pour voir tout les paquets installés qui ont besoin de python.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Widget GtkSwitch (On/Off)
Posté par barmic . En réponse à la dépêche Ubuntu 13.04 Raring Ringtail. Évalué à 2.
Tu as du mal avec les multiprises ?
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Qtisation
Posté par barmic . En réponse à la dépêche Ubuntu 13.04 Raring Ringtail. Évalué à 5.
Tu entends quoi par là ? Si tu parle du système de type, vendredi est terminé.
Python est touché par les même problèmes que le C pour le calcul en virgule flottante si numpy a des classes pour gérer ça, il faut comparer avec des bibliothèques pour gérer ça en C.
Le C et le C++ (c'est de ça dont il voulait parler), c'est des normes ISO. En terme de pérennité on ne fais pas mieux.
Blender est tout de même largement écris en C et C++ (je présume que c'est pour une question de performance en plus alors que python sert aux plugin). Je ne suis pas sûr que ce soit un bon exemple car c'est trop différent comme application.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Qtisation
Posté par barmic . En réponse à la dépêche Ubuntu 13.04 Raring Ringtail. Évalué à 3.
Il attaque déjà une base qui doit être en C ou C++ et utilise une interface graphique en C (Gtk), le code glue entre les deux ne devrait pas consommer particulièrement de ressources.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Widget GtkSwitch (On/Off)
Posté par barmic . En réponse à la dépêche Ubuntu 13.04 Raring Ringtail. Évalué à 1.
La couleur, il n'y en a qu'une l'autre c'est la couleur du fond. Les multiprises à boutons utilisent le même code (allumé = en marche) avec pour la majorité du rouge comme couleur.
À mon avis là où il y a un recul d'un point de vu ergonomique c'est que la surface sur la quelle cliquer est bien plus petite.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Widget GtkSwitch (On/Off)
Posté par barmic . En réponse à la dépêche Ubuntu 13.04 Raring Ringtail. Évalué à 4.
En informatique on ferais ça avec un changement de couleur par exemple ? :-)
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Widget GtkSwitch (On/Off)
Posté par barmic . En réponse à la dépêche Ubuntu 13.04 Raring Ringtail. Évalué à 3.
Tu n'a jamais allumé (ou éteins) tes radiateurs ? C'est identique le | des fois rouge c'est ON, le 0 c'est off. Tu clique à gauche pour allumer et à droite pour éteindre.
Je ne dis pas que c'est mieux que ce qu'il y avait avant, je ne me sert pas de ce genre de bascule, mais ça ne me semble pas si anti-ergonomique que ça.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Trollons
Posté par barmic . En réponse au journal OpenShot abandonne Gtk+.... Évalué à 4.
Et tizen je crois.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Trollons
Posté par barmic . En réponse au journal OpenShot abandonne Gtk+.... Évalué à 1.
Historiquement c'est il y a 15 ans… Si ça n'était que ça ils auraient pu évoluer depuis.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Tellement répété…
Posté par barmic . En réponse au journal Privateur.... Évalué à 6.
Ils utilisent quoi comme serveur web ? Apache ? nginx ? lighttpd ?
Le langage qui tourne coté serveur c'est python ? node.js ? PHP ?
La licence de dalvik ? de boinc ? du SDK ?
La licence de Bind est copyleft ?
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Controverse sur le numéro de version
Posté par barmic . En réponse à la dépêche jQuery 2.0. Évalué à 2.
Avec un environnement qui a le même niveau de fonctionnalité ? (c'est à dire un gestionnaire de fenêtre hyper-minimaliste, un navigateur simpliste, pas de gestion du wifi si je ne m'abuse, etc).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Polymorphisme
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 10.
C'est surtout que tu va au devant de problème avec la police.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Avantage pas compris
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 1.
J'ai lancé ça un peu comme ça. Mais tu peut avoir des méthodes sans effet de bords dans la version template, alors que dans la version polymorphe tu es obligé d'en avoir.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: un inconvénient des templates
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 7.
Ou alors l'échelle n'est pas linéaire. :)
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Dire que certaine pense que le Ocaml est illisible...
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à -1.
python est-il un dérivé de Java ?
scala fait de l'héritage dynamique, les traits et de l'inférence de type, rien que ça c'est extrêmement différent de ce que propose Java (ou même ce qui est dans les cartons pour Java8 ou plus loin encore).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Avantage pas compris
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 2.
Je ne dis pas le contraire. C'est juste que je ne trouve pas que c'est considérablement plus complexe au vu de la différence de complexité entre l'implémentation polymorphe et template.
Là où ça deviens vraiment plus complexe c'est si tu souhaite paralléliser le calcul des sous résultats.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Dire que certaine pense que le Ocaml est illisible...
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 2.
La citation initiale complète :
J'ai présumé, comme d'autres, que les deux phrases, se suivant au sein d'un même paragraphe étaient liées.
Je ne ferrais pas de remarques sur les concepts aux quels tu fais références et qui ne sont pas liés à Java.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Dire que certaine pense que le Ocaml est illisible...
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 2.
Et Java est inspiré de C++, lui même inspiré du C. Quasiment tous les langages ont des inspiration. Tu as même une partie spécialement pour ça sur Wikipedia. Ce n'est pas parce que Java est l'un des inspirateur de scala que la syntaxe de scala doit être proche de celle de Java (elle ne l'est pas en fait).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Dire que certaine pense que le Ocaml est illisible...
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 4.
Il est compatible c'est tout (comme groovy).
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Avantage pas compris
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 1.
Ajouter un attribut à ton visiteur avec un accesseur.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Code auto-documenté
Posté par barmic . En réponse au journal To comment or not to comment. That is the question.. Évalué à 4.
Je préfère personnellement la boucle for quitte à la mettre sur 3 lignes (je ne touche pas aux noms, ni n'ajoute de typedef, mais je le fais presque systématiquement) :
L'avantage c'est qu'on voit qu'il s'agit d'une itération complète. On sait qu'il s'agit d'un foreach, ça ne laisse pas de place à l'imagination.
Après faut être un peu réaliste et plutôt utiliser les outils standards qui sont à disposition :
ou
On gagne énormément sans toucher aux identifiants. C'est quand l'itération n'est pas complète que la question peut se poser. Comme ça par exemple :
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: De la réinvention de la roue.
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 2.
Je pense que la question c'est plutôt comment s'est implémenté en boost.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Cocasse
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 6.
Il n'a pas dis qu'il ne vois pas l'intérêt juste qu'il ne va pas en parler.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Compréhension
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 3.
Merci, là oui ça présente un intérêt (pas la version avec rtti).
Je n'ai vraiment pas du être clair, c'est la version template que je remet en cause pas le paterne.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)
[^] # Re: Compréhension
Posté par barmic . En réponse au journal Visiteurs en C++. Évalué à 4.
J'ai parlé de la version template. Le paterne en lui même je comprends tout à fais son intérêt.
Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)