Forum Programmation.autre Et alors ? Go de google, c'est bien ?

Posté par  .
Étiquettes :
3
15
mai
2012

Bonsoir,

je suis pas programmeur pour un sou, mais je viens de voir une conférence sur le langage GO et il m'a semblé que c'était présenté comme le langage qui reprenait les bonnes idées des autres sans les inconvénients.
Bien, mais c'est le mec de google qui dit ça.
Et vous, qui avez tenté l'aventure, ça donne quoi ?

Je n'arrive pas à trouver de programme qui utilise ce langage dans ma distrib (où je suis passé à côté). Quels retours ?

Bref, votre avis sur go.C'est du lourd, ou c'est juste une annonce bidon ?

Bonne soirée !

P.S. en tous cas, j'ai pas vu de section concernant ce langage sur linuxfr

  • # Ça rame trop...

    Posté par  . Évalué à 8.

    C'est parce que Go est lent…

    oui, je sais, j'y vais -->[]

  • # J'sais pas

    Posté par  (site web personnel, Mastodon) . Évalué à 2.

    mais à en juger par ce journal : http://linuxfr.org/users/rewind/journaux/go-1 il n'y a pas grand chose à lui reprocher non plus.

  • # J'ai un journal pour toi !

    Posté par  (site web personnel) . Évalué à 4.

  • # AMHA

    Posté par  . Évalué à 7.

    Je ne l'ai pratiqué que superficiellement mais, à mon avis; il dispose de solides atouts :

    • Langage libre, avec de nombreux contributeurs hors Google (qui y emploie une dizaine de personnes à temps plein aujourd'hui).
    • Relativement efficace (CPU, mémoire vive)
    • Doté d'une syntaxe familière.
    • Des concepts simples, plutôt réfléchis et suffisants (on peut comprendre et pratiquer l'ensemble de ceux-ci en quelques semaines, ce que peu de langages permettent réellement). C'est à mon sens l'un de ses plus gros atouts.
    • À la base prévue pour de la programmation système et réseau, son usage réel l'amène aujourd'hui à devenir un langage généraliste.
    • La production d'un binaire (avec cross-compilation) qui facilite le déploiement et la distribution.
    • La commande go, qui prend en charge la compilation, la gestion de dépendances, le style du code, la documentation, les tests….
    • Une compilation rapide.
    • Batteries incluses : une librairie standard que je trouve assez complète et bien pensée.
    • Un langage assez "moderne" : prise en charge native d'Unicode, concurrence aisée via les goroutines et les channels…
    • Déjà utilisé en production et parfois sur des applications critiques par des entreprises de renom (surtout des startups) : Google lui-même, mais aussi Heroku, Atlassian, Camlistore…

    Cela dit, le langage a ses propres défauts :

    • Il est encore jeune : initié courant 2007, une révélation publique fin 2009, la version "stable" est arrivée il y a seulement quelques semaines.
    • Conséquence du premier point, le nombre de projets actifs en Go est limité (1, 2) (CGo permet cependant d'utiliser du code existant C). La communauté est dynamique mais cela peut être dû à l'effet de Buzz de la 1.0.
    • Dans le même ordre, peu de gens connaissent Go, même s'il est relativement simple à apprendre. C'est donc un risque au niveau de certains décideurs, qui de toute façon n'imaginent rien en dehors de Java, C#, PHP voire C(++).
    • Il s'agit d'un langage compilé statiquement typé. Certains avantages des langages interprétés ne sont logiquement pas présents.
    • Go est un peu verbeux (beaucoup moins que Java à mon sens mais davantage que des langages comme Ruby, ooc, …).
    • Il est moyennement portable : Windows, GNU/Linux, OSX, FreeBSD (OpenBSD est quasi officiel je crois) mais trois architectures (x86, 64, ARM). GCCGo vise davantage de plateformes mais n'est pas encore complet.
    • Certains défauts existent au niveau du ramasse-miettes, notamment en 32bits. Le journal cité au dessus en parle; et un nouveau GC est en cours de développement parait-il.
    • Certains reprocheront le fait que ce soit une entreprise, Google, qui décide en dernier ressort (et non une fondation et/ou une communauté démocratique).

    Cela ne veut en aucun cas dire que c'est du lourd ou qu'il aura un brillant avenir; la qualité technique ou même conceptuelle n'influençant pas toujours sur le succès d'un langage.

    Mais personnellement, je trouve qu'il remplit très bien son espace et parierai sur sa pérennité, même si je doute qu'il entre dans le TOP10 de popularité avant longtemps.

  • # Ton but?

    Posté par  . Évalué à 6.

    Bref, votre avis sur go. C'est du lourd, ou c'est juste une annonce bidon ?

    Ta question me paraît mal formulée, un langage c'est un outil donc ça dépend pas mal du but..

    Pour toi, comme tu n'es "pas programmeur pour un sou" je recommanderai plutôt Python pour débuter.
    Bon, pour essayer de te répondre, l'histoire montre que les qualités d'un langage ne sont pas forcément le plus important pour avoir du succès (autrement Ada serait beaucoup plus utilisé) donc c'est difficile de prévoir si Go va avoir du succès, d'autant plus qu'il y en a de la compétition: D, Objective-C, etc.

  • # Déjà entendu

    Posté par  . Évalué à 4.

    il m'a semblé que c'était présenté comme le langage qui reprenait les bonnes idées des autres sans les inconvénients.

    En même temps, c'est ce qui motive le développement de tout nouveau langage, et ils sont à peu près tous présentés de la même façon. Et pour troller un poil, c'était même exactement ce qui devait faire la force de Perl. Et on a vu ce que ça a donné ! :-)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.