Den mærkelige lille gerbil i Go er blevet en elsket skabning for mange programmører. Go-sproget blev først udgivet i 2007, og det blev fostret lige hos Google.

Det er helt sikkert et af de hurtigst voksende sprog til webservere og netværk. Men det er også et generelt programmeringssprog, som du kan bruge til stort set alt, og der findes masser af bøger, der kan hjælpe dig med at lære det uden problemer.

Tag et kig på denne liste, og se, hvad du kan finde. Uanset om du er en komplet nybegynder eller en halvt uddannet koder, er disse bøger fremragende for alle, der lærer Go fra bunden.

Bedste Go-programmeringsbog

Hvis du er en komplet nybegynder, der leder efter en solid Go-bog, så anbefaler jeg Go in Action. Den underviser gennem praktiske eksempler og casestudier, hvor du studerer realistiske scenarier med Go. Helt klart en kvalitetsintroguide, selv for håbefulde ikke-teknologiske programmører.

The Go Programming Language


Den mest autoritative ressource for moderne programmering er bogen The Go Programming Language. Den strækker sig over 400 sider fulde af øvelser med klare forklaringer på, hvordan programmeringssprog fungerer fra bunden af.

Du behøver ikke nogen forudgående viden for at arbejde dig igennem lektionerne i denne bog. De er ekstremt enkle at samle op, og du kan lære så meget bare ved at rode med Go på egen hånd.

Skrivstilen er tilgængelig selv for komplette nybegyndere, der aldrig har skrevet en linje kode i deres liv. Den kan godt fungere som en begynderbog, selv om den er meget teknisk og går meget i detaljer.

Hvis du ønsker at lære Go måske lave noget baggrundsforskning online først. Derefter vil du vide, om du vil fortsætte med at lære, og om denne bog vil fungere for dig.

Go in Practice


Mannings praktiske tilgang til undervisning er altid forfriskende, og det er fantastisk at se, hvordan de har dækket Go-sproget i denne bog.

Go in Practice fungerer meget som en trin-for-trin-læringsressource, hvor du studerer 70 forskellige eksempler på Go-programmer, og hvordan de fungerer. Forfatterne tager dig gennem sproget og starter med et meget simpelt “hello, world!”-program.

Derfra dykker du ned i CLI’en og henter tips til lokal scripting via kommandolinjen. Dette omfatter grundlæggende matematiske beregninger, arbejde med routing og læring af goroutiner til samtidighed.

Hvis du ikke forstår nogen af disse idéer skal du ikke være bekymret! Skrivestilen er meget klar og kortfattet, så du burde ikke have problemer med at lære det hurtigt.

Og hvis du ikke kan samle et specifikt emne op, kan du altid google efter løsninger på nettet.

Go in Action


En anden beslægtet Manning-bog er Go in Action, denne er lidt mere enkel, men også mere praktisk for absolutte begyndere.

Ved at følge disse øvelser får du mere håndgribelige eksempler fra den virkelige verden, som tvinger dig til at lære ideer, mens du bygger på din viden. Hver lektion bliver gradvist mere kompleks, mens du tilføjer tidligere idéer i lektionerne.

Dette tvinger dig til virkelig at internalisere Go-sproget, og hvordan det hele hænger sammen i den virkelige verden. Du lærer alt om datastrukturer, lokal testning, samtidighed og brug af Go’s standardbibliotek.

Præsentationsteknikkerne er fejlfrie, og dette er bestemt en fornuftig intro for begyndere. Det kan være lidt svært at grave sig igennem koden uden forudgående kodeerfaring, men det kan bestemt lade sig gøre, og øvelserne vil lære dig mere, end nogen teoribog kan.

Introducing Go: Build Reliable, Scalable Programs


Som et sprog til generelle formål er der meget du kan gøre med Go. Det er bygget til at køre hurtigt, og samtidighed + skalerbarhed er to afgørende emner at forstå.

Bogen Introducing Go: Build Reliable, Scalable Programs er meget kort, men meget sød. Den er kun 120 sider lang, og den dækker mange af de grundlæggende elementer i Go i en markant skrivestil.

Hvis du allerede kan noget programmering i et andet sprog, vil denne bog være en leg. Jeg tror, at den er bedre egnet til komplette nybegyndere, der ønsker en simpel intro uden at snuppe en massiv titel.

Disse øvelser er ikke så praktiske for den virkelige verden, men de gør et glimrende stykke arbejde med at vise, hvad du kan gøre i Go. Ved slutningen af denne bog bør du føle dig tryg ved at skrive dine egne programmer og udvide din viden på egen hånd.

Go webprogrammering


Tro det eller ej, du kan faktisk køre Go-kode på webservere. Det giver udviklere mulighed for at skabe skalerbare programmer, der kører som højtydende applikationer på enhver computer.

Sau Sheong Changs Go Web Programming lærer moderne designprincipper for internettet, og hvordan du kan anvende dem i dit arbejde. Du lærer om dependency injection og hvordan man skriver samtidige applikationer til nettet (noget tricky, men meget sjovt!).

Du finder et væld af praktiske øvelser, der beskriver alle de vigtigste teknikker, herunder API-kald til at gennemløbe XML/JSON-data. Benchmarking, enhedstest og skalering af dine applikationer er også dækket i detaljer.

Sidste kapitler omhandler PaaS-applikationer, der kører på Go, og hvordan du vedligeholder dine projekter med en containerplatform som Docker.

Hvis du har interesse i at bruge Go til internettet, er denne bog et must.

Go Programmeringssprog: Easy Guide Book


Hvis du er helt ny i Go og har brug for en kort simpel ressource til at lære det, så bør du skimme denne bog igennem.

Go Programmeringssprog: Easy Guide Book af Steven Keller tilbyder en fuldt udbygget guide til Go-sproget. Den lærer dig samtidig programmering fra bunden, og hvordan du kan bruge HTTP/2-protokollen i dit projektarbejde.

Du lærer om Go-klienten og om, hvordan TCP/IP-opkald fungerer ved hjælp af sockets. Go har et ret stort standardbibliotek til netværk, men du kan også stole på tredjeparts-API’er, hvis du er villig til at grave rundt på nettet.

Jeg vil ikke sige, at denne bog lærer dig alt om Go. Faktisk er det faktisk kun toppen af isbjerget.

Så er det stadig en sød ressource for begyndere, der ikke er sikre på, hvor de skal starte.

The Way To Go


Da Go er et så forenklet sprog, kan det være forvirrende at forstå, hvad der foregår i kodebasen.

I The Way To Go lærer du, hvordan du forstår denne forenklede syntaks, og hvorfor den er så meget anderledes end andre sprog. Forfatteren Ivo Balbaert har en måde at skrive på, der passer til Go-kodens forenklede natur.

De første kapitler forklarer det grundlæggende i Go, og hvordan du får det sat op på din computer. Derfra lærer du om structs, maps, træsystemer og parallelprogrammering, som er en grundpille for de fleste Go-udviklinger.

Denne bog forklarer også bedste praksis for hvert kapitel sammen med mønstre, du bør undgå. Det er den bedste grundbog til at sætte dig på sporet til at udføre Go-kode, der kan holde til tidens tand.

Go Programming Blueprints


Go er et så nuanceret sprog, at det kræver en masse øvelse at forstå, hvilke teknikker der virker bedst. Eller du kan få en bog som Go Programming Blueprints, der lærer dig alle disse teknikker lige fra starten!

Denne bog er utrolig enkel at arbejde sig igennem, og den spænder over 250 sider med detaljerede koncepter. Alle disse koncepter undervises ved hjælp af eksempler, og du lærer de “gode” fremgangsmåder sammenlignet med de knap så gode.

Bemærk venligst, at denne bog ikke er for komplette nybegyndere. Du skal absolut have noget erfaring med Go-programmering(eller i det mindste nogen programmeringserfaring), før du kan få noget ud af denne titel.

Den fungerer godt, hvis du er helt ny i Go, men du skal virkelig forstå begreberne variabler/funktioner, og hvordan kode typisk fungerer.

Level Up Your Web Apps With Go


Her er en anden webbaseret guide, der dækker Go til webapplikationer. Level Up Your Web Apps With Go spænder over 260 med tonsvis af praktiske eksempler, der hjælper dig med at bygge rigtige fungerende websteder fra bunden.

Men du bygger ikke bare simple kedelige landingssider. Du bygger komplekse applikationer, der kan oprette forbindelse til databaser, autentificere brugere og køre dataforespørgsler ved hjælp af samtidig programmering.

Go er fænomenal til alle disse ting, hvilket gør det til et overraskende smukt sprog til webprogrammering. Det er bestemt ikke “normen”, og de fleste mennesker vil ikke forstå, hvorfor Go kan være et så godt værktøj til webapps.

Men når du først har lært det grundlæggende ved at arbejde dig igennem denne bog, vil du se på webprogrammering i et helt nyt lys.

Web Development with Go


Den noget lange Web Development with Go-bog er endnu en utrolig ressource til at lære, hvordan server-side Go fungerer.

Det er en fremragende reference til API-arbejde og opbygning af samtidige forbindelser til større webapplikationer. Du behøver ikke at have dine egne ideer eller endda virkelig forstå, hvordan disse programmer fungerer. Det eneste, du behøver, er en vis arbejdsmoral og en grund til at lægge noget arbejde bag Go.

Gennem forskellige øvelser lærer du mange forskellige teknikker til udformning af Go-projekter. Disse omfatter bl.a. testning i BDD-stil og strukturering af projekter på Google/Amazon cloud-tjenester som AWS. Du får også et par tips til MongoDB og brugerdefineret databasearbejde.

Hvis du er villig til virkelig at dykke ned i praktisk webudvikling med Go, så er denne bog 100 % værd at læse. Den er ikke engang særlig lang med lige under 300 sider og et væld af referencemateriale + øvelser til at øve sig i.

Concurrency i Go


Concurrency er en vigtig del af Go-programmering, fordi det er den bedste måde at fremskynde din applikation på. Dette er også meget almindeligt med andre sprog, men Go er praktisk talt bygget til samtidighed.

Det er derfor Concurrency in Go er en investering værd for alle, der sidder fast i dette emne.

De fleste begynderbøger forklarer samtidighed og tilbyder et par eksempler for at få dig i gang. Men denne bog går virkelig i dybden med ideerne omkring samtidighed, og hvordan du bør skabe applikationer med dette i tankerne.

Parallel programmering er et stort emne under paraplyen “samtidighedskodning”. Det hele er dækket meget detaljeret, og ved slutningen af denne bog bør du føle dig meget sikker på at skrive samtidige applikationer på egen hånd.

Programmering i Go


Denne bog synes at passe til en meget specifik målgruppe af programmører, der allerede kan et(eller nogle få) sprog og ønsker at tage Go op.

Skrivstilen holder dig ikke i hånden eller tilbyder nogen særlig behandling for begyndere. Derfor er Programming in Go et godt køb for alle programmører på mellemniveau, der ikke ved meget om Go, men som gerne vil lære det.

Hvert enkelt kodeeksempel i denne bog er klart og tydeligt beskrevet og forklaret meget detaljeret. Man kan se, at forfatteren Mark Summerfield virkelig kan sit kram. Gennem disse kodestumper lærer du en masse om, hvordan Go fungerer, og hvordan du kan bruge dine egne metoder i Go-applikationer.

Sidste kapitler kommer ind på idiomatisk kode, og hvordan du kan bruge designmønstre til at forenkle din arbejdsgang.

Denne bog bør bringe enhver programmør op på et solidt komfortniveau med Go. Det er på ingen måde den største titel eller det bedste valg for alle, men den taler direkte til dig fra en programmør til en anden.

Netværksprogrammering med Go


Da Go fungerer så godt på klient/server-netværk er det rimeligt at sige, at der er meget, du kan gøre med dette sprog. Og Network Programming with Go er den ultimative guide, der viser, hvordan du kan bruge Go til dine egne ideer om kvalitetsnetværk.

Du lærer om sikkerhedsspørgsmål og HTTPS-forbindelser, fjernprocedurekald og web sockets, der forbinder via HTML5.

Hvis du går i retning af webudvikling, vil du måske også gerne opfriske dine færdigheder inden for frontend-kodning. Men du kan klare dig med rudimentær HTML/CSS og skabe nogle fantastiske applikationer fra bunden.

Hold denne bog i tankerne, når du vil dykke dybere ned i netværksarbejde. Det er ikke den enkleste guide i verden, men den vil virkelig uddybe netværksarbejde i Go, så du kan planlægge dine egne applikationer.

Go er virkelig ikke så svært at lære, men det kan tage et stykke tid at mestre. Gennem øvelse lærer du, hvor dette sprog fungerer bedst, og hvordan du bedst anvender det i hverdagen.

Hvis du lige er kommet i gang, anbefaler jeg de to Manning-bøger Go in Action efterfulgt af Go in Practice. Disse to bør tage enhver nybegynder op til et ganske behændigt niveau.

Derfra kan du dykke ned i programmering af webapplikationer, brugerdefinerede netværk eller ethvert andet emne, du ønsker at lære.

Author: Jaime Morrison

Jaime er en jr. designer, der er interesseret i mobil UI/UX-forskning og frontend webudvikling med JavaScript-rammer. Han dækker generelle nyheder og nyttige ressourcer inden for webdesignområdet.

Articles

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.