Schweitzer Fachinformationen
Wenn es um professionelles Wissen geht, ist Schweitzer Fachinformationen wegweisend. Kunden aus Recht und Beratung sowie Unternehmen, öffentliche Verwaltungen und Bibliotheken erhalten komplette Lösungen zum Beschaffen, Verwalten und Nutzen von digitalen und gedruckten Medien.
Kapitel 1
IN DIESEM KAPITEL
Go ist eine quelloffene Programmiersprache, die von Google erstmals im Jahr 2009 vorgestellt wurde und inzwischen immer mehr Fans findet. Mit dieser Sprache können Sie unterschiedlichste Aufgaben bewältigen und vor allem schnelle, skalierbare Anwendungen entwickeln.
Hinter Go stecken einige ziemlich clevere Köpfe, allen voran: Ken Thompson (Designer und Erfinder von Unix und C), Rob Pike (Co-Entwickler des UTF-8- und Unix-Formats) und Robert Griesemer (ein Google-Informatiker). Wenn Sie sich für technische Details interessieren und des Englischen mächtig sind, können Sie im Artikel »Go at Google: Language Design in the Service of Software Engineering« (https://talks.golang.org/2012/splash.article) nachlesen, welche Problemstellungen ursprünglich mit Go bei Google angegangen werden sollten.
https://talks.golang.org/2012/splash.article
In diesem Kapitel erfahren Sie, warum Go Ihrer Karriere zuträglich ist, wo diese Sprache überall eingesetzt werden kann und welche ersten Schritte Sie unternehmen müssen, um selbst mit Go zu programmieren.
Da die Website von Go unter der Adresse https://golang.org zu erreichen ist, hat sich auch die Bezeichnung Golang für diese Programmiersprache etabliert. Der offizielle Name ist jedoch Go und wird demzufolge in diesem Buch beibehalten.
https://golang.org
Programmiersprachen gibt es heute viele, doch Go sticht aus der breiten Masse hervor. Dies hat mehrere Gründe:
Bei der objektorientierten Programmierung (OOP) dreht sich alles um Datenobjekte. Es geht also primär nicht um Funktionen oder Logik, sondern um Daten. Ein wesentliches Konzept bei der OOP ist die Klasse (quasi eine Art Vorlage für Datenobjekte). Angenommen, Sie möchten Ihre Anwendung mit mehreren Schaltflächen versehen. Damit Sie den zugehörigen Programmcode nicht wiederholt für jede einzelne Schaltfläche schreiben müssen, können Sie eine Klasse für eine generische Schaltfläche definieren und diese dann zum Erstellen Ihrer gewünschten Schaltflächen nutzen. Dabei hat jede Schaltfläche ihre eigenen Attribute (Merkmale). Mithilfe von Vererbung können Sie bei der OOP mehrere Subklassen aus der generischen Schaltflächenklasse erzeugen, um unterschiedliche Arten von Schaltflächen zu generieren, beispielsweise Schaltflächen in Rechteckform oder mit abgerundeten Ecken und so weiter.
Go bietet derzeit keine Unterstützung für generische Datentypen (bei denen der tatsächliche Datentyp erst bei Verwendung angegeben werden muss), doch dies könnte sich künftig ändern, da die Sprache weiterentwickelt wird.
All das hat Sie noch nicht überzeugt? Dann habe ich ein weiteres Argument, das Sie motivieren könnte, die Programmierung mit Go zu lernen: Stack Overflow, eine Internetplattform mit Fragen und Antworten rund um das Thema Programmierung, führt jährliche Gehaltsumfragen unter Softwareentwicklern durch. Ergebnissen aus dem Jahr 2021 zufolge (siehe Stack Overflow Developer Survey 2021, https://insights.stackoverflow.com/survey/2021) landen Go-Entwickler unter den ersten zehn.
https://insights.stackoverflow.com/survey/2021
Obwohl es Go schon eine ganze Weile gibt (nämlich seit 2009), findet die Sprache erst jetzt immer mehr Zustimmung in der Softwareentwicklungsbranche, vor allem dank Cloud-Computing und Microservices. Mittlerweile kommt Go bei zahlreichen großen Unternehmen wie Dailymotion, Dropbox, Google und Uber zum Einsatz.
Die Anwendungsszenarien sind vielfältig:
Bestimmt sind Sie neugierig, wie Sie nun mit Go etwas auf Ihrem Computer programmieren können. Legen wir also los!
Als Erstes müssen Sie Go installieren. Am einfachsten geht dies über die Installationsseite auf der offiziellen Go-Website: https://golang.org/doc/install. Die Website erkennt automatisch Ihr gerade genutztes Betriebssystem und bietet Ihnen die passende Installationsdatei zum Herunterladen an (siehe Abbildung 1.1).
https://golang.org/doc/install
Abbildung 1.1: Die Go-Installationsdatei steht zum Herunterladen bereit.
Die Programmbeispiele in diesem Buch wurden mit Version 1.15 von Go geschrieben und getestet. Wenn Sie dieses Buch in den Händen halten, gibt es aber bestimmt schon eine neuere Go-Version. Damit Sie trotzdem alle Beispiele problemlos ausprobieren können, sollten Sie sich dieselbe Version herunterladen, die ich auch genutzt habe. Diese finden Sie hier:
https://golang.org/dl/go1.15.8.darwin-amd64.pkg
https://golang.org/dl/go1.15.8.windows-amd64.msi
Wenn Sie alle verfügbaren Installationsdateien für die unterstützten Plattformen (Linux, macOS und Windows) oder sogar den Quellcode von Go sehen möchten, öffnen Sie folgende Seite in Ihrem Browser: https://golang.org/dl/.
https://golang.org/dl/
Nachdem Sie die Go-Installationsdatei heruntergeladen haben, führen Sie sie per Doppelklick aus, um den Installationsvorgang zu starten. Es öffnet sich ein Dialogfenster, in dem Sie der Endbenutzer-Lizenzvereinbarung zustimmen müssen und dann den gewünschten Speicherort für die Go-Dateien angeben können. Unter Windows wird standardmäßig der Ordner Programme beziehungsweise Programme (x86) vorgeschlagen. Damit Sie die Beispiele aus diesem Buch leicht nachvollziehen können, ändern Sie diese Einstellung und speichern Sie die Dateien stattdessen unter C:\Go. Alle anderen Standardeinstellungen können Sie beibehalten. Klicken Sie zum Schluss auf die Schaltfläche INSTALL. Go wird nun innerhalb weniger Sekunden installiert. Nach Abschluss des Vorgangs erscheint ein Bestätigungsfenster (siehe Abbildung 1.2).
Programme
Programme (x86)
C:\Go
Abbildung 1.2: Der Go-Installationsvorgang ist abgeschlossen.
In den folgenden Abschnitten zeige ich Ihnen, wie Sie unter macOS und Windows überprüfen können, ob Go korrekt installiert wurde.
Unter macOS wird die Go-Distribution standardmäßig im Verzeichnis /usr/local/go installiert. Außerdem fügt das Installationsprogramm automatisch das Verzeichnis /usr/local/go/bin zur PATH-Umgebungsvariablen hinzu. Dies lässt sich leicht überprüfen. Öffnen Sie dazu die Terminal-App (die Sie im Ordner Programme/Dienstprogramme finden) und geben Sie folgenden Befehl ein:
/usr/local/go
/usr/local/go/bin
PATH
Programme/Dienstprogramme
$ echo $PATH
Sie sehen nun eine Ausgabe ähnlich der folgenden, nur dass statt weimenglee Ihr eigener Benutzername erscheint (der neu hinzugefügte Go-Pfad ist fett hervorgehoben):
weimenglee
/Users/weimenglee/opt/anaconda3/bin:/Volumes/SSD/opt/anaco nda3/condabin:/Users/weimenglee/flutter/bin:/Users/weimeng lee/go/bin:/Users/weimenglee/.nvm/versions/node/v9.2.0/bin :/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/g o/bin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/App le/usr/bin:/Library/Frameworks/Mono.framework/Versions/Cur rent/Commands
/Users/weimenglee/opt/anaconda3/bin:/Volumes/SSD/opt/anaco
nda3/condabin:/Users/weimenglee/flutter/bin:/Users/weimeng
lee/go/bin:/Users/weimenglee/.nvm/versions/node/v9.2.0/bin
:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/g
o/bin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/App
le/usr/bin:/Library/Frameworks/Mono.framework/Versions/Cur
rent/Commands
Starten Sie die Terminal-App neu, nachdem Sie Go installiert haben, damit die geänderten Einstellungen korrekt...
Dateiformat: ePUBKopierschutz: Adobe-DRM (Digital Rights Management)
Systemvoraussetzungen:
Das Dateiformat ePUB ist sehr gut für Romane und Sachbücher geeignet – also für „fließenden” Text ohne komplexes Layout. Bei E-Readern oder Smartphones passt sich der Zeilen- und Seitenumbruch automatisch den kleinen Displays an. Mit Adobe-DRM wird hier ein „harter” Kopierschutz verwendet. Wenn die notwendigen Voraussetzungen nicht vorliegen, können Sie das E-Book leider nicht öffnen. Daher müssen Sie bereits vor dem Download Ihre Lese-Hardware vorbereiten.Bitte beachten Sie: Wir empfehlen Ihnen unbedingt nach Installation der Lese-Software diese mit Ihrer persönlichen Adobe-ID zu autorisieren!
Weitere Informationen finden Sie in unserer E-Book Hilfe.