IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Go Discussion :

Go est plus utilisé par les développeurs pour leurs projets personnels


Sujet :

Go

  1. #1
    Expert éminent sénior
    Avatar de Coriolan
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2016
    Messages
    701
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2016
    Messages : 701
    Points : 51 808
    Points
    51 808
    Par défaut Go est plus utilisé par les développeurs pour leurs projets personnels
    Go est plus utilisé par les développeurs pour leurs projets personnels
    Selon le sondage Go 2016

    L’année dernière, plus de 3500 utilisateurs du langage Go ont participé à un sondage sur le langage de programmation Go. 89 % des participants ont informé qu’ils programment avec Go au travail ou en dehors du travail, alors que 39 % l’utilisent à domicile et au travail. Moins de 30 % des participants l’utilisent à domicile et 23 % utilisent le langage de programmation au travail de façon exclusive.

    Nom : Screen-Shot-2017-03-08-at-11.19.11-AM.png
Affichages : 6872
Taille : 32,4 Ko
    Lorsqu’ils ont été interrogés sur leur occupation, 63 % des participants ont informé qu’ils travaillent en web développement, mais seulement 9 % ont listé le développement web seul. En effet, 77 % des participants ont choisi deux catégories ou plus.

    Python avant Java

    Le sondage a inclus des questions sur l’expertise et la préférence des langages de programmation. Sans surprise étant donné que ce sondage à été fait en ciblant les utilisateurs de Go, Go a pris la première place comme étant un langage de choix des participants que ça soit en termes d’expertise (26 %) ou de préférence (62 %). Si on exclut Go, le top 5 des choix des participants pour l’expertise de langage sont :

    Python (18 %) ;
    Java (17 %) ;
    JavaScript (13 %) ;
    C (11 %) ;
    PHP (8 %).

    Le top 5 des choix pour la préférence de langage est :

    Python (22 %) ;
    JavaScript (10 %) ;
    C (9 %) ;
    Java (9 %) ;
    Ruby (7 %).

    63 % des participants utilisent Go pour écrire des programmes de ligne de commande, 60 % l’utilisent pour écrire des API ou des services RPC, et 52 % développent des services web.

    Usage de Go

    Les développeurs sont majoritairement satisfaits avec Go, 19 développeurs contre un seul sont prêts à le recommander à d’autres et 14 contre un préfèrent utiliser le langage de programmation dans leur prochain projet. Toutefois, la plupart des participants ne pensent pas que Go soit critique à la réussite de leur entreprise.

    Lorsqu’ils ont été interrogés sur ce qu’ils aiment le plus dans Go, les utilisateurs ont majoritairement mentionné sa simplicité, sa facilité d’utilisation et sa performance. Toutefois, les utilisateurs espèrent que des améliorations et changements aient lieu sur les génériques, les versions de paquets et la gestion des dépendances. Les autres réponses populaires ont été les GUI (interfaces utilisateurs graphiques), le débogage et la manipulation des erreurs.

    Si Go est un langage puissant pour ses partisans, il n’en demeure pas moins que les développeurs et sa communauté s’attendent encore à plus de support. « La documentation n’est pas assez évidente pour les débutants. Elle a besoin de plus d’exemples et elle assume souvent qu’on a une expérience avec d’autres langages et thématiques d’informatique. »

    Développement et déploiement

    Les développeurs de Go ont informé qu’ils utilisent différents systèmes d’exploitation, 63 % utilisent Linux, 44 % utilisent MacOS et 19 % utilisent Windows, avec plusieurs choix possibles pour les participants et 49 % travaillant sur plusieurs OS. Les 51 % qui utilisent un seul système d’exploitation se sont divisés également sur différents OS (Linux 29 %, MacOS 17 %, Windows 5 % et 0,2 % pour les autres OS).

    Nom : deployment - Go.png
Affichages : 5443
Taille : 25,6 Ko
    Solutions d'hébergement utilisées par les développeurs Go (plusieurs choix possibles)


    Source : blog Go

    Et vous ?

    Pourquoi utilisez-vous Go ?

    Voir aussi :

    Google annonce la disponibilité de Go 1.8 qui serait 15 % plus rapide que son prédécesseur grâce à une optimisation de son compilateur
    Forum Go
    Plus d'articles dans la rubrique Go
    Dans quels langages de programmation seriez-vous prêt à vous investir en 2017 ? Et pourquoi ?
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    884
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juillet 2007
    Messages : 884
    Points : 2 018
    Points
    2 018
    Par défaut
    C/C++, Python ou PHP ne sont pas des concurents de Go (ils sont soitr plus haut niveau donc plus lent soit plus bas niveau donc plus complexe). Ses concurrents sont Java et Rust. Mais Rust est le grand absent de se sondage.

    Personnellement j'hésite entre Java (langage historique mais avec de gros défaut), Rust et Go.
    Tout ce que j'écris est libre de droits (Licence CC0) et je vous incite à faire de même.

  3. #3
    Invité
    Invité(e)
    Par défaut Go est faussement simple
    J'utilise go depuis 2 ans pour le web et le langage fait l'objet de certains malentendus. Go a une syntaxe épurée et les librairies natives sont sans fioriture. Cependant son utilisation optimale nécessite d'utiliser des concepts qui restent difficiles pour les débutants. Pas de projet évolué sans mutex ou utilisation des channels, les slices sont plus pernicieux qu'il n'y parait et un niveau avancé exige une excellente maîtrise des librairies de reflection associée aux interfaces, le plus souvent pour contourner le manque de généricité.
    En effet, en go, il n'existe ni type générique, ni objet passe-partout tel que l'Object de Java. En contrepartie une fois que votre programme tourne, il est à l'épreuve des balles et s'avère très rapide. Un malentendu est que go serait inadapté aux applications web (dont mvc). Comparé à Rails, l'execution des templates côté serveur est bien plus rapide, selon mes constatations, dans un rapport de 1 à 10. Et go est particulièrement doué pour tout ce qui touche les API et le traitement du Json.
    Ajoutez à cela les goroutines, et vous avez une belle palette d'outils susceptible de répondre à 99% des besoins du web.
    Le point faible se situe au niveau des Orm inclus dans les divers framework web. Gorm est le plus abouti mais on est en dessous du couple hibernate/JPA, d'un ActiveRecords ou encore de SqlAlchemy. L'absence de type générique rend très difficile le développement d'un Orm, qui ont toutes recours aux librairies de reflection, réputées les plus difficiles à appréhender. Ceci explique cela.
    D'un manière générale, sitôt qu'on aborde des projets utilisant des types complexes (par exemple des types imbriqués), il faut donner un peu de sa personne. Par exemple la fonction scan de la lib sql est très rudimentaire et ne permet pas en pratique de lier un type complexe au résultat d'une requête sql comportant de multiples jointures. Vous implémentez votre propre fonction scan ou adoptez une autre méthode...
    A voir si la rapidité et la clarté du code final sont des arguments suffisants pour compenser cet effort, pour ma part j'estime que oui.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2003
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2003
    Messages : 76
    Points : 87
    Points
    87
    Par défaut Merci
    Merci cloudit.fr pour ton analyse qui me paraît très pertinente. Je me suis un peu frotté à Go, qui en effet propose des concepts peu familiers au pythonicien que je suis (suffisamment étrangers à mes habitudes pour me rebuter étant donné ma motivation initiale très modérée), mais qui tient bien ses promesses de performance. Personnellement, je voulais faire du GUI non-web, donc ce n’était pas le langage privilégié.

  5. #5
    Membre habitué

    Homme Profil pro
    Développeur .Net et Web, Ingénieur en Analyse et Conception de SII
    Inscrit en
    Octobre 2014
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur .Net et Web, Ingénieur en Analyse et Conception de SII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2014
    Messages : 82
    Points : 144
    Points
    144
    Billets dans le blog
    2
    Par défaut
    Ces statistiques là proviennent d'où ?
    Fely Kanku Developpeur .Net et analyste programmeur

Discussions similaires

  1. Les développeurs sont-ils des destructeurs d’emploi ?
    Par Hinault Romaric dans le forum Débats sur le développement - Le Best Of
    Réponses: 450
    Dernier message: 09/09/2020, 10h08
  2. Réponses: 100
    Dernier message: 31/03/2014, 14h56
  3. Les développeurs sont-ils des destructeurs d’emploi ?
    Par Hinault Romaric dans le forum Actualités
    Réponses: 345
    Dernier message: 05/05/2013, 17h20
  4. Réponses: 0
    Dernier message: 25/07/2011, 13h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo