Maison  >  Article  >  développement back-end  >  « Rapport d'enquête officiel des développeurs Go 2021 »

« Rapport d'enquête officiel des développeurs Go 2021 »

Golang菜鸟
Golang菜鸟avant
2023-08-07 16:22:411008parcourir

Chaque année, les responsables de Go organisent une enquête auprès des développeurs de Go, et l'année dernière n'a pas fait exception. Mais après avoir terminé l'enquête et collecté les informations, j'ai disparu... sinon, à un moment donné, la communauté et mes amis me demandaient où ils pouvaient le voir.

Non, récemment, le responsable a finalement publié les "Go Developer Survey 2021 Results[1]", je l'ai traduit directement (avec les suppressions, seul le contenu clé est affiché), vous pouvez y jeter un œil et apprendre sur le développement du marché communautaire Go.

Résultats de l'enquête auprès des développeurs Go

Points forts

  • La plupart des réponses sont cohérentes avec celles des années précédentes. Par exemple, la satisfaction à l'égard de Go reste élevée à 92 %, et 75 % des personnes interrogées l'utilisent au travail.
  • Cette année, nous avons échantillonné au hasard certains participants à l'aide du plugin Go VSCode, ce qui a entraîné des changements dans les réponses à l'enquête.
  • Le manque de bibliothèques clés, de fonctionnalités linguistiques et d'infrastructures sont les obstacles les plus courants à l'utilisation de Go. (Remarque : cette enquête a été menée avant la sortie de Go 1.18, les génériques étant la première fonctionnalité manquante signalée)
  • Les personnes interrogées souhaitaient donner la priorité aux améliorations du débogage et de la gestion des dépendances.
  • Les plus grands défis lorsque l'on travaille avec des modules sont la gestion des versions, l'utilisation de référentiels privés et les workflows multi-modules. (Remarque : cette enquête a été menée avant Go 1.18, qui a introduit les espaces de travail et résolu bon nombre de ces problèmes).
  • 81% des personnes interrogées sont confiantes dans l'orientation à long terme du projet Go.

Quelle voix avons-nous écoutée ?

Nos données démographiques sont restées stables d'année en année (voir résultats 2020). Conformément aux années précédentes, Go est principalement utilisé dans l’industrie technologique. 70 % des personnes interrogées sont des développeurs de logiciels, dont quelques-uns en informatique ou DevOps, et 76 % déclarent programmer en Go au travail.

« Rapport d'enquête officiel des développeurs Go 2021 »
« Rapport d'enquête officiel des développeurs Go 2021 »
« Rapport d'enquête officiel des développeurs Go 2021 »

Quelques nouvelles données démographiques pour 2021 :

  • La majorité des personnes interrogées ont décrit leur organisation comme une entreprise ou une PME, et environ un quart décrivant leur organisation comme une start-up. C'est beaucoup moins le cas pour les cabinets de conseil et les agences publiques.
  • La grande majorité des répondants travaillent en équipes de moins de 10 personnes.
  • Plus de la moitié (55 %) des personnes interrogées utilisent Go au travail quotidiennement. Les répondants utilisent Go moins fréquemment en dehors du travail. Nous avons demandé aux répondants s'ils avaient évalué des alternatives à Go au cours de l'année écoulée. 43 % des personnes interrogées ont déclaré avoir évalué le passage à Go ou l'adoption de Go sans langue établie auparavant.
  • 80% de ces évaluations sont essentiellement pour des raisons professionnelles.
« Rapport d'enquête officiel des développeurs Go 2021 »
Nous prévoyons que les cas d'utilisation les plus courants de Go seront les utilisations prévues les plus courantes pour les personnes évaluant Go. Les services API/RPC sont de loin l'utilisation la plus courante, mais étonnamment, le traitement des données est le deuxième cas d'utilisation prévu le plus courant. « Rapport d'enquête officiel des développeurs Go 2021 »
« Rapport d'enquête officiel des développeurs Go 2021 »
Parmi les personnes interrogées qui ont évalué Go, 75 % ont fini par utiliser Go. (Bien sûr, étant donné que presque tous les répondants à l'enquête ont déclaré utiliser Go, nous n'avons probablement pas entendu de développeurs qui ont évalué Go mais ont décidé de ne pas l'utiliser).

Pour ceux qui ont évalué Go mais n'utilisaient pas Go, nous leur avons ensuite demandé quels défis les empêchaient d'utiliser Go et lesquels d'entre eux constituaient les principaux obstacles.

Ce que nous tirons de ces résultats confirme les conclusions précédentes selon lesquelles les fonctionnalités manquantes et le manque de prise en charge de l'écosystème/de la bibliothèque sont les obstacles techniques les plus importants à l'adoption de Go.
« Rapport d'enquête officiel des développeurs Go 2021 »Nous avons demandé aux répondants plus de détails sur les fonctionnalités ou les bibliothèques qui leur manquaient et avons constaté que les génériques étaient la fonctionnalité manquante critique la plus courante. Nous espérons que cela deviendra moins problématique après l'introduction des génériques dans les obstacles de Go 1.18. La deuxième fonctionnalité manquante la plus courante est liée au système de types de Go.

Nous voulons voir comment l'introduction de génériques affecte ou répond aux besoins sous-jacents autour du système de types de Go avant d'apporter d'autres modifications.

Actuellement, nous rassemblerons plus d'informations sur le contexte de ces exigences et pourrons explorer différentes manières de répondre à ces exigences à l'avenir, par exemple via des outils, des bibliothèques ou des modifications du système de types.

En ce qui concerne les bibliothèques manquantes, il n'y a pas de consensus clair sur le type de bibliothèques qui seraient ajoutées pour débloquer le plus grand pourcentage de personnes souhaitant adopter Go. Cela nécessite une exploration plus approfondie.

Alors, lorsque les personnes interrogées ne choisissent pas Go, que choisissent-elles à la place ?

« Rapport d'enquête officiel des développeurs Go 2021 »

Rust, Python et Java sont les choix les plus courants.

Rust et Go ont des ensembles de fonctionnalités complémentaires, donc lorsque Go ne répond pas aux besoins fonctionnels d'un projet, Rust peut être un bon choix.

La principale raison de l'utilisation de Python est le manque de bibliothèques et de prise en charge de l'infrastructure existante, de sorte que le vaste écosystème de packages de Python peut rendre difficile la conversion vers Go.

Encore une fois, la raison la plus courante d'utilisation de Java est l'absence de fonctionnalités dans Go, ce qui peut être atténué par l'introduction de génériques dans la version 1.18.

Go Satisfaction et priorisation

Regardons ce que Go fait bien et où il peut s'améliorer.

Comme l'année dernière, 92 % des personnes interrogées se sont déclarées très satisfaites ou plutôt satisfaites de leur utilisation de Go au cours de l'année écoulée.

« Rapport d'enquête officiel des développeurs Go 2021 »

Cette année, nous introduisons une nouvelle question pour explorer d'autres façons de prioriser le travail dans des domaines spécifiques.

Question : "Supposons que vous disposiez de 10 GopherCoins qui pourraient être utilisés pour améliorer les aspects suivants de votre travail dans Go. Comment alloueriez-vous vos pièces ?"

Deux domaines qui se démarquent sont la gestion des dépendances (à l'aide de modules) et le diagnostic des erreurs. , ceux-ci Nous investirons des ressources en 2022.

« Rapport d'enquête officiel des développeurs Go 2021 »

Les défis les plus courants en matière de gestion des dépendances Go sont :

  • Travailler sur plusieurs modules (19 % des répondants).
  • est un commentaire sur les versions (y compris des craintes sur la version V1 stable promise de l'API).

En ce qui concerne les versions, 9% des réponses discutent de la gestion des versions ou de la mise à jour des dépendances. Le top cinq était complété par des défis liés aux référentiels privés (y compris la certification pour GitLab), à la mémorisation des différentes commandes go mod et à la compréhension de leurs messages d'erreur.

Outils et pratiques des développeurs

Comme les années précédentes, la grande majorité des personnes interrogées ont déclaré utiliser Go sur les systèmes Linux (63 %) et macOS (55 %). Il semble y avoir une légère tendance à la baisse dans la proportion de personnes interrogées qui développent principalement sous Linux au fil du temps.

« Rapport d'enquête officiel des développeurs Go 2021 »

Parmi les personnes interrogées qui utilisent le plugin VSCode, 91 % préfèrent utiliser VSCode lorsqu'elles utilisent Go.

« Rapport d'enquête officiel des développeurs Go 2021 »

Plateforme cible (déploiement)

Plus de 90 % des personnes interrogées ciblent Linux Bien que davantage de personnes interrogées développent sur macOS que sur Windows, elles déploient plus souvent sur Windows que sur Windows macOS !

« Rapport d'enquête officiel des développeurs Go 2021 »

Résumé

Examen global des résultats de notre enquête auprès des développeurs 2021 Pour réitérer, quelques points clés à retenir.

  • La plupart de nos mesures d'une année sur l'autre restent stables, la plupart des changements étant dus à des changements dans notre échantillon.
  • La satisfaction à l'égard de Go reste élevée !
  • Les trois quarts des personnes interrogées utilisent Go au travail, et de nombreuses personnes utilisent Go tous les jours, donc vous aider à faire votre travail est une priorité absolue.
  • Nous donnerons la priorité aux améliorations des workflows de débogage et de gestion des dépendances.
  • Nous continuerons à travailler dur pour faire de Go une communauté inclusive pour les Gophers de toutes sortes.

Pour faire simple, il est en plein essor et la plupart des gens sont plutôt satisfaits de Go.

La plus grande contradiction concerne les génériques et la gestion des dépendances. Les génériques ont été publiés dans Go1.18, la gestion des dépendances continue d'être améliorée et l'optimisation des outils de débogage sera également augmentée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer