0Pricing
Go Academy icon

Go Academy

GOBackendCloudSystemsWebBeginnerEnterpriseNetwork

Immergiti nella programmazione Go per creare applicazioni efficienti e scalabili con GO Academy.

🤖 Alimentato da IA📚 51 corsi👥 100.000+ studenti⭐ Valutazione 4,9
Panoramica del Corso

Go: Built for Concurrency, Designed for Scale

Go è un linguaggio staticamente tipizzato e compilato creato da Google per gestire le esigenze dei sistemi su larga scala — compilazione veloce, concorrenza diretta e una libreria standard minimale che copre veramente le necessità di produzione. Alimenta l'infrastruttura di aziende come Docker, Kubernetes, Cloudflare e Uber. Questo percorso insegna Go dai primi principi passando per il modello di concorrenza, le REST API, i servizi gRPC e gli strumenti di performance che gli ingegneri usano in produzione.

What You Will Learn

Inizierai con il type system di Go, i zero values e il control flow, poi passerai a slices, maps, structs, interfaces e le convenzioni di error handling che rendono il codice Go prevedibile. Il percorso copre il package sync, goroutines, channels e la dichiarazione select per la programmazione concorrente, più il package context per la cancellazione. Dal lato pratico costruirai HTTP servers e clients con net/http, scriverai REST API con Gin, aggiungerai middleware, interrogherai database con database/sql, sqlx, pgx e GORM, creerai CLI tools con Cobra e deploierai applicazioni all'interno di container Docker. Gli argomenti avanzati includono benchmarking con pprof, worker pools, pipelines, gRPC, reflection e il Go memory model.

The Learning Path

Cinquantuno corsi progrediscono da A1 attraverso A2, B1, B2 e fino a C1. I corsi di livello A stabiliscono i fondamentali del linguaggio — variables, control flow, functions, multiple return values e i core collection types. B1 approfondisce il modello con structs, pointers, interfaces, packages, la libreria standard e file I/O. B2 è il blocco più grande e copre tutto da goroutines e channels attraverso HTTP, testing, generics, database access, REST API con Gin, Docker deployment, structured logging con slog, WebSockets e cron jobs. C1 si conclude con materiale a livello di produzione: benchmarking e profiling con pprof, worker pools e pipelines, advanced concurrency patterns, gRPC con Go, il package reflect, un plugin system e il Go memory model e garbage collector.

How It Works

Ogni corso è diviso in brevi lezioni focalizzate che completi nell'editor di codice integrato con feedback in tempo reale. Quando rimani bloccato, un tutor AI è disponibile inline per spiegare il concetto senza rivelare la risposta — così costruisci una vera comprensione invece di copiare le soluzioni.

Inizia a Imparare →

Come Imparerai

🎯
Lezioni Interattive
Esercizi di codifica pratici con feedback in tempo reale
🤖
Tutor IA
Ricevi aiuto istantaneo dalla nostra IA quando sei bloccato
💻
Editor Integrato
Scrivi ed esegui il codice direttamente nel tuo browser
🏆
Certificato
Guadagna un certificato al completamento del corso
Curriculum

51 Corsi

Ogni corso nel percorso di apprendimento Go Academy.

01

Benvenuto in Go

A13 lezioni

Scopra cos'è Go, perché Google l'ha creato e perché alimenta alcuni dei software più importanti al mondo — con spiegazioni pensate per chi…

02

Basi di Go: variabili, tipi e valori zero

A14 lezioniPRO

Apprenda il sistema dei tipi di Go, le dichiarazioni di variabili con var e :=, i valori zero e le costanti, incluso iota.

03

Flusso di controllo: if, for, switch

A14 lezioniPRO

Padroneggi i costrutti del flusso di controllo di Go, tra cui if con istruzioni di inizializzazione, il versatile ciclo for e switch.

04

Funzioni e valori restituiti multipli

A24 lezioniPRO

Comprenda le funzioni Go: firme, parametri variadici, valori restituiti denominati, defer e funzioni di prima classe.

05

Array, slice e map

A24 lezioniPRO

Approfondisca le collezioni di Go: array a dimensione fissa, slice dinamiche e map hash, usando pattern idiomatici.

06

Stringhe Go e il pacchetto strings

A24 lezioniPRO

Stringhe Go e il pacchetto strings: rune e byte a confronto, funzioni del pacchetto strings, e altro.

07

Formattazione con fmt e Stringer

A24 lezioniPRO

Formattazione con fmt e Stringer: verbi di Printf, Sprintf e Fprintf, e altro.

08

Tempo in Go e il pacchetto time

A24 lezioniPRO

Tempo in Go e il pacchetto time: tempo e durata, formattazione e analisi, e altro.

09

Fondamenti di struct e metodi in Go

B14 lezioniPRO

Modelli i dati con le struct, associ comportamenti tramite i metodi e comprenda la differenza tra receiver per valore e per puntatore.

10

Puntatori in Go

B14 lezioniPRO

Comprenda i puntatori in Go: indirizzi di memoria, dereferenziazione, receiver puntatori e quando utilizzare i puntatori.

11

Interfacce e duck typing in Go

B14 lezioniPRO

Apprenda il sistema implicito delle interfacce di Go, definisca e implementi interfacce e utilizzi asserzioni e switch sui tipi.

12

Gestione degli errori in Go

B14 lezioniPRO

Padroneggi la gestione esplicita degli errori in Go: interfaccia error, errors.Is/As, wrapping e tipi di errore personalizzati.

13

Package e moduli Go

B14 lezioniPRO

Organizzi il codice Go con i package, gestisca le dipendenze con i moduli Go e comprenda le regole di visibilità.

14

Elementi essenziali della libreria standard Go

B14 lezioniPRO

Esplori i package più importanti della libreria standard Go: fmt, strings, strconv, math, time e os.

15

Espressioni regolari in Go

B14 lezioniPRO

Espressioni regolari in Go: fondamenti di regexp, ricerca ed estrazione, e altro.

16

Ordinamento in Go e il pacchetto sort

B14 lezioniPRO

Ordinamento in Go e il pacchetto sort: ordinamento degli slice, ordini di ordinamento personalizzati, e altro.

17

Analisi approfondita delle mappe in Go

B14 lezioniPRO

Analisi approfondita delle mappe in Go: interni delle mappe, verifica dell’esistenza, e altro.

18

Tag delle struct e validazione in Go

B14 lezioniPRO

Tag delle struct e validazione in Go: cosa sono i tag delle struct, tag JSON, e altro.

19

Formati di codifica in Go

B14 lezioniPRO

Formati di codifica in Go: ripasso di encoding/json, encoding/xml, e altro.

20

I/O su file e gestione del JSON

B14 lezioniPRO

Legga e scriva file con os e bufio, codifichi e decodifichi JSON con encoding/json e gestisca dati CSV.

21

bufio e I/O efficiente in Go

B14 lezioniPRO

bufio e I/O efficiente in Go: lettori con buffer, scanner, e altro.

22

Embedding e composizione in Go

B14 lezioniPRO

Embedding e composizione in Go: embedding delle struct, embedding delle interfacce, e altro.

23

Fondamenti di goroutine e channel

B24 lezioniPRO

Avvii goroutine, comunichi tramite channel e comprenda il modello di concorrenza di Go con i channel bufferizzati.

24

Istruzione select e pattern con i channel

B24 lezioniPRO

Utilizzi select per la comunicazione tra più channel e implementi fan-in/fan-out, timeout e pool di worker.

25

Mutex e package sync

B24 lezioniPRO

Protegga lo stato condiviso con Mutex, RWMutex, Once e WaitGroup del package sync di Go.

26

Il package context per la cancellazione

B24 lezioniPRO

Utilizzi context.Context per propagare cancellazioni, scadenze e valori associati alla richiesta tra le goroutine.

27

Server HTTP con net/http

B24 lezioniPRO

Costruisca server HTTP in Go usando net/http: handler, ServeMux, middleware e arresto graduale.

28

Client HTTP e consumo di REST API

B24 lezioniPRO

Consumi REST API con http.Client di Go: timeout, header, autenticazione, analisi del JSON e retry.

29

Strategie di testing in Go

B24 lezioniPRO

Scriva test efficaci con il package testing di Go: test basati su tabelle, sottotest, mock e copertura del codice.

30

Generics in Go: parametri di tipo e vincoli

B24 lezioniPRO

Padroneggi i generics di Go 1.18+: parametri di tipo, vincoli, comparable e pattern generici reali.

31

io.Reader e io.Writer in Go

B24 lezioniPRO

io.Reader e io.Writer in Go: l’interfaccia Reader, l’interfaccia Writer, e altro.

32

Pattern delle opzioni funzionali in Go

B24 lezioniPRO

Pattern delle opzioni funzionali in Go: il problema dei molti parametri, funzioni opzione, e altro.

33

Limitazione della frequenza in Go

B24 lezioniPRO

Limitazione della frequenza in Go: concetto di token bucket, golang.org/x/time/rate, e altro.

34

Fondamenti di database/sql in Go

B24 lezioniPRO

Fondamenti di database/sql in Go: apertura di una connessione, interrogazione delle righe, e altro.

35

Creazione di app CLI con Cobra

B24 lezioniPRO

Costruisca strumenti professionali da riga di comando con Cobra: comandi, flag, sottocomandi, configurazione e distribuzione.

36

Accesso ai database con sqlx e pgx

B24 lezioniPRO

Esegua query su PostgreSQL da Go usando database/sql, sqlx per il mapping nelle struct e pgx per l'accesso ad alte prestazioni.

37

Creazione di REST API con Gin

B24 lezioniPRO

Crei REST API pronte per la produzione con il framework Gin: routing, binding, validazione e gestione degli errori.

38

Pattern middleware in Go

B24 lezioniPRO

Progetti middleware HTTP riutilizzabili: logging, limitazione della frequenza, autenticazione, CORS e inserimento dell'ID della richiesta.

39

Distribuzione di applicazioni Go con Docker

B24 lezioniPRO

Containerizzi i binari Go con build Docker multi-stage, Docker Compose, configurazione dell'ambiente e health check.

40

ORM GORM in Go

B24 lezioniPRO

ORM GORM in Go: modelli e AutoMigrate, operazioni CRUD, e altro.

41

Configurazione in Go con Viper

B24 lezioniPRO

Configurazione in Go con Viper: lettura dei file di configurazione, variabili d’ambiente, e altro.

42

Logging strutturato in Go con slog

B24 lezioniPRO

Logging strutturato in Go con slog: perché usare log strutturati, gestori di slog, e altro.

43

WebSocket in Go

B24 lezioniPRO

WebSocket in Go: fondamenti dei WebSocket, uso di gorilla/websocket, e altro.

44

Cron job e pianificazione in Go

B24 lezioniPRO

Cron job e pianificazione in Go: pianificazione basata sul tempo, libreria robfig/cron, e altro.

45

Benchmark e profilazione con pprof in Go

C14 lezioniPRO

Misuri e ottimizzi il codice Go con benchmark, profili CPU/heap di pprof e trace di esecuzione.

46

Worker pool e pipeline in Go

C14 lezioniPRO

Worker pool e pipeline in Go: pattern del worker pool, fan-out e fan-in, e altro.

47

Pattern avanzati di concorrenza

C14 lezioniPRO

Costruisca sistemi concorrenti pronti per la produzione con pipeline, errgroup, semafori e pattern reactor.

48

gRPC con Go

C14 lezioniPRO

Definisca servizi con Protocol Buffers, generi codice Go e implementi servizi gRPC unari e streaming.

49

Reflection e package reflect

C14 lezioniPRO

Ispezioni e manipoli i tipi a runtime con reflect: Kind, Value, tag delle struct e invocazione dinamica.

50

Sistema di plugin in Go

C14 lezioniPRO

Costruisca applicazioni Go estensibili con i package plugin, le interfacce e il caricamento dinamico su Linux.

51

Modello di memoria e garbage collector di Go

C14 lezioniPRO

Comprenda il modello di memoria di Go, le regole happens-before, stack e heap, l'escape analysis e l'ottimizzazione del GC.

FAQ

Domande Frequenti

Il corso Go Academy è gratuito?

Sì. Puoi iniziare il corso Go Academy gratuitamente e completare le sue lezioni interattive senza costi. Un abbonamento PRO opzionale sblocca strumenti IA avanzati e un certificato condivisibile.

Serve esperienza precedente per imparare GO?

No. Il corso inizia con i fondamenti e prosegue gradualmente verso argomenti più avanzati, quindi puoi iniziare anche senza alcuna esperienza precedente in GO.

Come imparerò GO su CoddyKit?

Impari facendo. Brevi lezioni interattive abbinano una spiegazione chiara a un esercizio di codifica pratico che gira in tempo reale, e un tutor IA disponibile 24/7 offre aiuto personalizzato quando rimani bloccato.

Ricevo un certificato per il completamento di Go Academy?

Sì. Gli studenti PRO possono sostenere un esame e guadagnare un certificato condivisibile di completamento con un codice verificabile per il corso Go Academy.

Posso imparare GO dal mio telefono?

Sì. CoddyKit è disponibile sul web e come app native iOS e Android, quindi puoi imparare GO su qualsiasi dispositivo e i tuoi progressi si sincronizzano tra loro.

Inizia Go Academy Ora

Unisciti a migliaia di studenti che imparano la programmazione con lezioni potenziate dall'IA.

Inizia Gratis →Sfoglia Tutti i Corsi