
Bildquelle
Go ist eine relativ junge, aber beliebte Programmiersprache. Laut einer Stack Overflow- Umfrage erreichte Golang den dritten Platz in der Rangliste der Programmiersprachen, die Entwickler gerne beherrschen würden. In diesem Artikel werden wir versuchen, die Gründe für die Popularität von Go zu verstehen und herauszufinden, wo diese Sprache verwendet wird und warum es sich überhaupt lohnt, sie zu studieren.
Ein bisschen Geschichte
Die Programmiersprache Go wurde von Google erstellt. Eigentlich ist sein vollständiger Name Golang eine Ableitung der "Google-Sprache". Trotz der Tatsache, dass in der Ankündigung die Sprache jung genannt wurde, wird sie dieses Jahr zehn Jahre alt sein.
Das Ziel der Entwickler von Go war es, eine einfache und effektive Programmiersprache zu entwickeln, mit der hochwertige Software erstellt werden kann. Rob Pike, einer der Entwickler von Go, sagte, dass Go für Firmenprogrammierer entwickelt wurde, die vor kurzem ihr Studium abgeschlossen haben und Java, C, C ++ oder Python kennen. Go for them ist eine Sprache, die Sie schnell verstehen und sich schnell daran gewöhnen können.
Ursprünglich war es ein Tool innerhalb von Google, aber im Laufe der Zeit kam es aus dem Darm des Unternehmens und wurde öffentlich.
Sprachvorteile
Golang hat eine Vielzahl von Vorteilen, sowohl bekannte als auch nicht bekannte.
Einfachheit. Eigentlich war dies das Hauptziel der Schaffung der Sprache, und es wurde erreicht. Go hat eine ziemlich einfache Syntax (mit bestimmten Annahmen), sodass Anwendungen schneller entwickelt werden können als in einigen anderen Sprachen. Und es gibt zwei interessante Punkte.
Erstens kann Golang schnell einen Anfänger in der Programmierung erlernen - einen, der überhaupt keine einzige Sprache kennt und nur Entwickler werden wird. Über Go können wir sagen, dass es fast so unkompliziert ist (relativ natürlich) wie PHP oder sogar Pascal, aber so leistungsfähig wie C ++.
Zweitens kann Go von einem bereits „ausgereiften Programmierer“ beherrscht werden, der bereits eine oder mehrere Sprachen beherrscht. Am häufigsten lernen Entwickler Go, nachdem sie Python oder PHP beherrschen. Außerdem verwenden einige Programmierer erfolgreich ein Paar Python / Go oder PHP / Go.
Eine große Anzahl von Bibliotheken. Wenn Sie Funktionen in Go verpassen, können Sie eine der vielen Bibliotheken verwenden und die erforderliche Aufgabe ausführen. Go hat noch einen weiteren Vorteil: Sie können problemlos mit C-Bibliotheken interagieren. Es gibt sogar die Meinung, dass Go-Bibliotheken Wrapper für C-Bibliotheken sind.
Code Sauberkeit. Der Go-Compiler hält den Code sauber. Beispielsweise werden nicht verwendete Variablen als Kompilierungsfehler betrachtet. Go behebt die meisten Formatierungsprobleme. Dies geschieht beispielsweise mit dem Programm gofmt beim Speichern oder Kompilieren. Die Formatierung wird automatisch korrigiert. Weitere Informationen hierzu finden Sie im Effektiven Tutorial.
Statische Eingabe. Ein weiterer Vorteil von Go, der die Wahrscheinlichkeit verringert, dass ein Entwickler einen Fehler macht. Ja, in den ersten Tagen ist ein Programmierer, der an dynamisches Tippen gewöhnt ist, verärgert, einen Typ für jede Variable und Funktion, falls erforderlich, sowie für alles andere zu deklarieren. Aber dann wird klar, dass es solide Pluspunkte gibt.
Godoc . Ein Dienstprogramm, das das Dokumentieren von Code erheblich vereinfacht. Ein großer Vorteil von GoDoc ist, dass keine zusätzlichen Sprachen wie JavaDoc, PHPDoc oder JSDoc verwendet werden. Das Dienstprogramm verwendet die maximale Menge an Informationen, die es aus dem dokumentierten Code extrahiert.
Codepflege. Dank seiner einfachen und übersichtlichen Syntax ist es leicht zu warten. All dies ist ein Erbe von Google. Da das Unternehmen über eine große Menge an Code für verschiedene Softwareprodukte sowie Zehntausende von Entwicklern verfügt, die dies alles verstehen, tritt ein Serviceproblem auf. Der Code sollte für alle, die daran arbeiten, klar, gut dokumentiert und präzise sein. All dies ist mit Go möglich.
Gleichzeitig gibt es in Golang keine Klassen (es gibt Strukturen, Strukturen), es gibt keine Unterstützung für die Vererbung, was Codeänderungen erheblich vereinfacht. Außerdem gibt es keine Ausnahmen, Anmerkungen usw.
Was Sie auf Go schreiben können
Fast alles, mit Ausnahme einiger Punkte (zum Beispiel Entwicklungen im Zusammenhang mit maschinellem Lernen - Python eignet sich hier besser für Optimierungen auf niedriger Ebene in C / C ++ und CUDA).
Alles andere kann geschrieben werden, insbesondere in Bezug auf Webdienste. Darüber hinaus sollte Go Anwendungen sowohl für den Endbenutzer als auch für die Entwicklung von Dämonen entwickeln. Die Benutzeroberfläche eignet sich für plattformübergreifende Anwendungen und Dienste.
Nachfrage nach Golang

Mit der Zeit wird die Sprache immer beliebter. Zusätzlich zu den im obigen Bild gezeigten Unternehmen arbeiten Mail.ru Group, Avito, Ozon, Lamoda, BBC, Canonical und andere mit Golang zusammen.
„Wir haben uns entschlossen, das Geschäft zu skalieren. Für uns ist es wichtig, eine grundlegend neue technologische Plattform aufzubauen, die die schnelle Entwicklung des Produkts gewährleistet. Wir verlassen uns auf Go aufgrund seiner Geschwindigkeit und Zuverlässigkeit und vor allem auf das Publikum der Programmierer, die es verwenden “, sagten Vertreter von Ozon im Jahr 2018, nachdem das Unternehmen beschlossen hatte, zu Golang zu wechseln.
Was ist mit den Einkommen? Laut My Circle lagen die Löhne der Go-Entwickler im vergangenen Jahr im Durchschnitt bei 60-140.000 Rubel. Im Vergleich zu 2017 stieg dieser Indikator um 8,3%. Im Jahr 2019 dürfte sich das Wachstum fortsetzen, da viele Unternehmen Golang-Entwickler benötigen.
Was weiter?
Golang wird definitiv nicht aufhören, sich zu entwickeln. Der Bedarf an guten Spezialisten, die diese Sprache beherrschen, wird nur zunehmen, so dass es nicht schwierig sein wird, einen Job für einen Spezialisten (Anfänger oder Profi) zu finden. Grundsätzlich ist diese Aussage jetzt auch relevant, da es auf dem IT-Markt einen ständigen Mangel an Entwicklern gibt.
Go ist sowohl für Anfänger als auch für Profis geeignet, die bereits eine oder mehrere Programmiersprachen kennen. Fast jeder Programmierer kann es lernen oder neu lernen.
Der Artikel wurde gemeinsam mit dem Lehrer des Golang-Kurses bei GeekBrains Sergey Kruchinin erstellt, wofür er sich sehr bedankt!