Programmiersprache: Go-Entwickler setzen auf die neuen Generics

Laut einer Studie hat die Community das neue Feature schnell angenommen. Fuzzing ist dagegen recht unbekannt und Error Handling die größte Herausforderung.

In Pocket speichern vorlesen Druckansicht 17 Kommentare lesen

(Bild: Pasuwan/shutterstock.com)

Lesezeit: 3 Min.
Von
  • Maika Möbus

Das Team hinter der Programmiersprache Go hat die Ergebnisse seiner neuesten Umfrage veröffentlicht. Im Juni 2022 gaben mehr als 5700 Entwicklerinnen und Entwickler Einblicke in ihre genutzten oder nicht genutzten Go-Features, was ihnen Schwierigkeiten bereitet und wie zufrieden sie insgesamt mit der Programmiersprache sind. Generics sind den meisten Befragten bekannt und nur wenige Monate nach ihrer Veröffentlichung setzt ein Viertel sie bereits ein.

Go 1.18 führte im März 2022 Generics ein – eine Funktion, die in vielen anderen Programmiersprachen bereits vorhanden war und das gemeinsame Nutzen von Code sowie das Erstellen von Programmen erleichtern soll. Die Version brachte damit die größte Änderung in der von Google entwickelten Programmiersprache seit ihrer Open-Source-Veröffentlichung. Die aktuelle Umfrage betrachtet unter anderem, inwiefern die Entwickler-Community das neue Feature angenommen hat.

Der deutlichen Mehrheit der Umfrageteilnehmenden (86 Prozent) sind Generics in Go bekannt. Sechs Prozent wissen zwar von dem geplanten Feature, nicht aber von der erfolgten Umsetzung, und acht Prozent haben erst durch die Umfrage davon erfahren. Rund ein Viertel der Befragten setzt Generics in Go zum Zeitpunkt der Umfrage bereits ein, davon etwa die Hälfte in Produktion. Weitere 54 Prozent der Befragten stehen Generics zwar offen gegenüber, planen sie aber derzeit nicht einzusetzen. Dabei konnten 5566 gültige Antworten berücksichtigt werden.

Go Developer Survey Juni 2022: (Geplanter) Einsatz von Generics

(Bild: Google)

Die Go-Entwicklerinnen und -Entwickler haben vielfältige Gründe, warum sie Generics (noch) nicht einsetzen. Manche warten auf eine erweiterte Implementierung, die beispielsweise eine verbesserte Typinferenz oder parametrisierte Methoden umfasst. Andere geben Abhängigkeiten von etwas an, das nicht mit Generics umgehen kann, oder finden schlicht die Syntax zu umständlich. Von denjenigen, die Generics bereits eingesetzt und Feedback dazu gegeben haben, hat eine von zehn Personen vereinfachten Code oder weniger Code-Duplizierung zu verkünden. Das häufigste Feedback ist eine Form von "Danke", und nur sechs Prozent äußern sich negativ über das neue Feature.

Zu den weiteren Neuerungen in Go 1.18 zählt integrierter Fuzzing-Support, den allerdings nur fünf Prozent der Befragten nutzen. Zu den Gründen gegen das Fuzz-Testing zählen mangelnde Kenntnisse darüber beziehungsweise das Bedürfnis nach einer besseren Dokumentation, Zeitmangel und ein fehlendes Verständnis über mögliche Use Cases. Daher sieht das Go-Team Nachbesserungsbedarf, um den Wert von Fuzz-Testing darzulegen, wofür es sich eignet und wie es sich auf vielfältige Codebasen anwenden lässt.

Nachdem in vergangenen Go-Umfragen mangelnde Generics als größte Herausforderung galten, führt der Support für Typparameter in Go 1.18 zu der neuen Top-Herausforderung Error Handling. Es ist dem Go-Team zufolge statistisch mit verschiedenen anderen Hürden verknüpft, darunter dem Fehlen oder der mangelnden Reife von Libraries in bestimmten Domänen und weiteren Revisionen des Typsystems, darunter der Support für Enums und eine funktionalere Programmierungssyntax.

Die befragten Go-Developer sind mit der Programmiersprache überwiegend zufrieden.

(Bild: Google)

Insgesamt weisen die befragten Go-Nutzerinnen und -Nutzer jedoch eine hohe Zufriedenheit auf: 63 Prozent sind mit der Programmiersprache sehr ("very") und 30 Prozent einigermaßen ("somewhat") zufrieden.

Weitere Informationen zum aktuellen Go Developer Survey sind dem Go-Blog zu entnehmen. Aufgrund rechtlicher Gründe konnte das Go-Team entgegen dem ursprünglichen Plan die Rohdaten bisher noch nicht bereitstellen.

(mai)