Go programmieren für Dummies
Реклама. ООО «ЛитРес», ИНН: 7719571260.
Оглавление
Wei-Meng Lee. Go programmieren für Dummies
Schummelseite. ERSTE SCHRITTE MIT GO IM WEB
KONVERTIERUNG VON JSON-DATEN IN EIN GO-FORMAT
NUTZUNG VON GOLANG IN DOCKER
Über den Autor
Widmung
Danksagung des Autors
Inhaltsverzeichnis
Tabellenverzeichnis
Illustrationsverzeichnis
Orientierungspunkte
Seitenliste
Einleitung
Über dieses Buch
Törichte Annahmen über den Leser
Symbole, die in diesem Buch verwendet werden
Weitere Ressourcen
Wie es weitergeht
Erste Schritte mit Go
Auf die Plätze, fertig, Go!
Mit Go zum beruflichen Erfolg
Installieren von Go auf Ihrem Computer
macOS
Windows
Verwenden einer integrierten Entwicklungsumgebung (IDE) mit Go
Ihr erstes Go-Programm
Kompilieren und Ausführen Ihres Programms
Funktionsweise eines Go-Programms
Go-Dateistrukturen
Kompilieren von Programmen für mehrere Betriebssysteme
Vergleich von Go mit anderen Programmiersprachen
Syntax
Kompilierung
Nebenläufigkeit
Bibliotheken
Datentypen
Deklarieren von Variablen
Verwenden des var-Schlüsselworts: implizite Typisierung
Angeben des Datentyps: explizite Typisierung
Verwenden des Operators zur Kurzdeklaration von Variablen
Deklarieren von Konstanten
Entfernen von ungenutzten Variablen
Verwenden von Strings
Konvertieren von Datentypen
Herausfinden des Datentyps einer Variablen
Umwandeln des Datentyps einer Variablen
Interpolieren von Strings
Entscheidungsfindung
Entscheidungen mittels if/else
Grundbausteine der if/else-Anweisung: logische und vergleichende Operatoren
Verwenden der if/else-Anweisung
Kurzschlussauswertung in Go
Festlegen des Geltungsbereichs von Variablen durch eine if-Anweisung mit Initialisierung
Und was ist mit dem Fragezeichenoperator?
Verwenden der switch-Anweisung bei mehreren Bedingungen
Verwenden des fallthrough-Schlüsselworts
Vergleichen mehrerer case-Werte
Verwenden der switch-Anweisung ohne Variable
Noch einmal und noch einmal: Programmschleifen
Durchlaufen von Schleifen mit der for-Anweisung
Ein Hinweis zu ++ und – –
Endlosschleifen
Iteration über einen Wertebereich
Iterieren über Arrays/Slices
Iterieren über Strings
Verwenden von Sprungmarken mit der for-Schleife
Übersichtlicher Code dank Funktionen
Definieren einer Funktion
Definieren von Funktionen mit Parametern/Argumenten
Definieren von Funktionen mit mehreren Parametern
Übergeben von Werten und Zeigern
Zurückgeben von Werten aus Funktionen
Zuweisen von Namen zu zurückgegebenen Werten
Arbeiten mit variadischen Funktionen
Verwenden von anonymen Funktionen
Deklarieren einer anonymen Funktion
Implementieren von Closures mit anonymen Funktionen
Implementieren der filter()-Funktion mittels Closures
Datenstrukturen
Datensammlungen in Arrays und Slices
Allzeit bereit mit Arrays
Deklarieren eines Arrays
Initialisieren eines Arrays
Arbeiten mit mehrdimensionalen Arrays
Strukturell flexibel mit Slices
Erzeugen einer leeren Slice
Initialisieren einer Slice
Anhängen von Elementen an eine Slice
Slicing von Wertebereichen
Extrahieren von Teilen eines Arrays oder einer Slice
Iterieren über Slices
Kopieren eines Arrays oder einer Slice
Einfügen eines Elements in eine Slice
Entfernen eines Elements aus einer Slice
Logische Datenorganisation mit Structs
Definieren von Structs für Sammlungen aus Datenelementen
Erzeugen von Structs
Kopieren von Structs
Definieren von Methoden in Structs
Vergleichen von Structs
Beziehungen und Maps
Erstellen von Maps in Go
Initialisieren einer Map mit einem Map-Literal
Suchen nach einem bestimmten Schlüssel
Löschen eines Schlüssels
Abfragen der Anzahl an Elementen in einer Map
Iterieren über eine Map
Abrufen aller Schlüssel in einer Map
Festlegen der Iterationsreihenfolge in einer Map
Sortieren der Elemente in einer Map nach Wert
Verwenden von Structs und Maps in Go
Erstellen einer Map aus Structs
Sortieren der Elemente einer Map aus Structs
Datencodierung mit JSON
Grundlagen von JSON
Objekte in JSON
Zeichenkette
Boolescher Wert
Zahl
Objekt
Array
Null
Decodieren des JSON-Formats
Überführen von JSON-Daten in Structs
Überführen von JSON-Daten in Arrays
Decodieren von eingebetteten Objekten
Abbilden benutzerdefinierter Attributnamen
Abbilden unstrukturierter Daten
Codieren des JSON-Formats
Umwandeln von Structs in das JSON-Format
Umwandeln von Interfaces in das JSON-Format
Methodensignaturen mit Interfaces
Arbeiten mit Interfaces in Go
Definieren eines Interface
Implementieren eines Interface
Wozu sind Interfaces gut?
Hinzufügen von Methoden zusätzlich zum Interface
Verwenden des Stringer-Interface
Implementieren mehrerer Interfaces
Verwenden eines leeren Interface
Überprüfen, ob ein Wert ein spezifisches Interface implementiert
Multitasking in Go
Threading mit Goroutinen
Das Grundprinzip von Goroutinen
Verwenden von Goroutinen mit gemeinsamen Ressourcen
Vermeiden von Problemen bei gemeinsam genutzten Ressourcen
Sicheres Zugreifen auf gemeinsame Ressourcen mittels Mutex
Verwenden von atomaren Zählern zum Bearbeiten gemeinsamer Ressourcen
Synchronisieren von Goroutinen
Kommunikation zwischen Goroutinen mit Kanälen
Das Grundprinzip von Kanälen
Funktionsweise von Kanälen
Verwenden von Kanälen
Iterieren über Kanäle
Asynchrones Warten auf Kanäle
Verwenden von gepufferten Kanälen
Übersichtlicher Code
Pakete in Go
Arbeiten mit Paketen
Erstellen von gemeinsam benutzbaren Paketen
Organisieren von Paketen in Verzeichnissen
Verwenden von Drittanbieter-Paketen
Emojis für Go
Go Documentation
Windows
macOS
Anzeigen der Dokumentation für Ihr Paket
Module für Paketgruppen
Erstellen eines Moduls
Testen und Zusammensetzen eines Moduls
Veröffentlichen eines Moduls auf GitHub
Go in Aktion
Verwendung von Web-APIs mit Go
Funktionsprinzip von Web-APIs
Abrufen der Daten von Webservices in Go
Herstellen der Verbindung mit einer Web-API über ein Go-Programm
Decodieren von JSON-Daten
Umformen des Codes zum Decodieren von JSON-Daten
Simultanes Abfragen mehrerer Webservices
Übergeben der Ergebnisse einer Goroutine an die main()-Funktion
Eigene Webservices mit REST-APIs
Erstellen von Webservices mit REST-APIs
HTTP-Nachrichten
REST-URLs
REST-Methoden
REST-Antwort
Erstellen einer REST-API in Go
Einrichten Ihrer REST-API
Testen der REST-API
Registrieren zusätzlicher Pfade
Übergeben von Werten in der Query-Komponente
Angeben der Anfragemethoden
Speichern der Kursinformationen in der REST-API
Hinzufügen neuer Kurse
Aktualisieren von Kursen
Abrufen von Kursen
Löschen von Kursen
Erneutes Testen der REST-API
Verwendung von Datenbanken
Einrichten eines MySQL-Datenbankservers
Interagieren mit dem MySQL-Server
Erstellen einer Datenbank und Tabelle
Erstellen eines neuen Benutzerkontos mit Berechtigungen
Herstellen der Verbindung zur MySQL-Datenbank in Go
Abrufen eines Datensatzes
Hinzufügen eines Datensatzes
Bearbeiten eines Datensatzes
Löschen eines Datensatzes
Der Top-Ten-Teil
Zehn praktische Go-Pakete zum Erstellen von Anwendungen
color
Installation
Codebeispiel
now
Installation
Codebeispiel
go-pushbullet
Installation
Codebeispiel
goid
Installation
Codebeispiel
json2go
Installation
Codebeispiel
gojq
Installation
Codebeispiel
turtle
Installation
Codebeispiel
go-http-client
Installation
Codebeispiel
notify
Installation
Codebeispiel
gosx-notifier
Installation
Codebeispiel
Zehn nützliche Go-Ressourcen
Die offizielle Go-Website
Go by Example
Go-Tour
Häufig gestellte Fragen zu Go
Go Playground
Go Bootcamp
Effective Go
Gophercises
Tutorialspoint
Stack Overflow
Abbildungsverzeichnis
Stichwortverzeichnis
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Z
WILEY END USER LICENSE AGREEMENT
Отрывок из книги
Go programmieren für Dummies
Es gibt Situationen, in denen Go nicht auf dem lokalen Computer installiert werden kann. Vielleicht sitzen Sie ja an einem Computer Ihres Arbeitgebers und haben nur eingeschränkte Benutzerrechte. Oder Ihnen steht gerade gar kein eigener Computer zur Verfügung. Was auch immer der Grund ist: Sie brauchen nicht zu verzagen, denn es gibt verschiedene Alternativen im Internet und integrierte Entwicklungsumgebungen (IDEs), mit denen Sie Ihre ersten eigenen Go-Programme testen können. Die folgenden drei sind ziemlich cool:
.....
C:\users\IhrName\Kapitel 1>main.exe Hallo Welt!
Da man den geschriebenen Programmcode oft direkt nach dem Kompilieren testen möchte, gibt es den Befehl run, mit dem Sie das Kompilieren und Ausführen in einem Rutsch erledigen:
.....