Imparare Go: Corso Code
Imparare Go: Corso Code — Un tutorial di Golang con compilatore, race detector e kata quotidiani sul tuo telefono
Imparare Go: Corso Code è un tutorial di Golang gratuito per iOS e Android, pensato per principianti e sviluppatori professionisti, con compilatore ed editor Go che eseguono il tuo codice su una toolchain Go reale (è necessaria una connessione a internet). Verifica il codice con gofmt, go vet e il race detector e affronta 51 corsi, dal tuo primo fmt.Println fino a goroutine, API REST e gRPC, con un Mentor AI per le parti che non ti sono chiare.
- Prezzo
- Gratis, upgrade Pro
- Piattaforme
- iOS e Android
- Lingue
- 22
- Fascia d'età
- 4+
- Requisiti
- iOS 15.1 o versioni successive


Elimina la parola chiave go e guarda lo stesso lavoro richiedere tre volte tanto.
È la prima cosa che l'app ti fa fare con Go: esegui tre lavori da 120 ms ciascuno, osserva che il totale resta ben al di sotto di 360 ms, poi rimuovi l'unica parola chiave che li rende concorrenti. L'intera promessa del linguaggio sta in una sola parola, e l'app ti permette di percepirne l'effetto prima di spiegarlo.
Cos'è
Imparare Go: Corso Code è un'app gratuita per iOS e Android per imparare Go, il linguaggio compilato alla base di gran parte dei software cloud e server di oggi. Include 51 corsi e 203 lezioni, dal livello principiante a quello avanzato, un editor di codice che esegue i programmi su una toolchain Go reale, un kata quotidiano, un Concurrency Lab con un race detector reale e un percorso guidato in cui costruisci il tuo core HTTP. Un Mentor AI risponde alle domande su qualsiasi lezione.
Dentro l'app
Come si presenta





Il corso
Cosa comprende il corso di Go
51 corsi e 203 lezioni dall’elenco dei corsi dell’app, classificati da A1 a C1 e organizzati dal primo programma fino al profiling e al garbage collector.
Benvenuti in Go e alle basi
Cos’è Go e perché Google lo ha creato, poi variabili, tipi e valori zero, costanti e controllo del flusso con if, for e switch.
Funzioni, Slice e Map
Funzioni con più valori restituiti, defer e parametri variadici, array, slice e map, oltre a stringhe, formattazione con fmt e package time.
Struct, puntatori e interfacce
Struct e metodi, receiver di tipo valore rispetto a quelli di tipo puntatore, puntatori, interfacce implicite e duck typing, oltre all’embedding per la composizione.
Errori, package e libreria standard
Gestione esplicita degli errori con errors.Is ed errors.As, package e moduli, I/O su file e JSON, espressioni regolari, ordinamento e I/O con buffer.
Goroutine, channel e Sync
Fondamenti di goroutine e channel, select e pattern per i channel, mutex e package sync, context per la cancellazione, oltre a worker pool e pipeline.
HTTP, REST e database
Server e client HTTP con net/http, API REST con Gin, pattern per i middleware, database/sql con sqlx e pgx, GORM e WebSocket.
Testing, strumenti e deployment
Test basati su tabelle e sottotest, app da riga di comando con Cobra, configurazione con Viper, logging strutturato con slog e build Docker multi-stage.
Go avanzato
Generics con parametri di tipo e vincoli, benchmarking e profiling con pprof, gRPC con Protocol Buffers, reflection e modello di memoria.
Come funziona
Come funziona una sessione
Ogni lezione è una breve lettura seguita da codice da eseguire, così teoria e pratica si svolgono nella stessa sessione.
Leggi una breve lezione
Apri un corso e segui una singola lezione di pochi minuti, con la teoria spiegata in modo semplice e un piccolo esempio, come il programma package main e fmt.Println della primissima lezione.
Eseguilo su una toolchain Go reale
L'editor invia il tuo programma a un runner Go e ne mostra l'output. Anche gofmt, go vet e il race detector vengono eseguiti nello stesso modo, quindi l'app ha bisogno di una connessione quando premi Esegui; se un programma va in crash, viene mostrata una spiegazione dell'errore in linguaggio semplice.
Esercitati da un'altra prospettiva
Dopo un argomento, fai il quiz, risolvi il kata quotidiano, affronta un rompicapo sulla concorrenza oppure chiedi al Mentor AI di farti delle domande. Ognuna di queste attività esamina la stessa idea in modo diverso, aiutandoti a fissarla.
Cosa include
Cosa include l'app
51
Corsi, da A1 a C1
203 lezioni distribuite su 51 corsi, dalle basi di Go a slice e map, passando per interfacce, gestione degli errori, goroutine, net/http, Gin, accesso ai database, deployment con Docker, gRPC e garbage collector.
-race
Concurrency Lab con il race detector
Sei rompicapi eseguibili coprono due goroutine su un channel, un handshake non bufferizzato, un fan-out con WaitGroup, un contatore che perde aggiornamenti, una map con due writer e un deadlock. Puoi anche eseguire il tuo codice con il race detector, gratis e senza limite giornaliero.
Quotidiano
Un nuovo kata ogni giorno
Un esercizio di Go verificato rispetto a una tabella di casi, inclusi quelli nascosti, con una spiegazione di riferimento alla fine. Il kata quotidiano è gratuito per tutti; Pro sblocca la libreria completa, le soluzioni di riferimento e le spiegazioni.
Doctor
Go Doctor
Controlla se gofmt riscriverebbe il tuo file e applicalo, esegui go vet per individuare i problemi e, con Pro, chiedi all'escape analysis del compilatore perché un valore viene allocato. La formattazione è illimitata, mentre go vet è limitato a tre esecuzioni al giorno nel piano gratuito.
7 passaggi
Costruisci il tuo core HTTP
Un percorso guidato in cui scrivi personalmente la richiesta, la risposta, gli handler come funzioni, il routing, i parametri del percorso, il middleware e il JSON con errori wrapped, un passaggio verificato alla volta.
AI
Mentor AI e colloquio simulato
Chiedi al Mentor AI di spiegarti un concetto, indicarti un percorso o farti delle domande. Un colloquio simulato propone cinque domande su Go a livello junior, mid o senior e assegna un punteggio alle tue risposte, con un colloquio valutato gratuito a settimana.
Ripasso
Go Recall e Go by Example
Brevi schede “cosa stampa questo codice?” sui classici trabocchetti, come l'ordine di defer, le map nil e la condivisione della memoria con append, oltre a snippet eseguibili della libreria standard che puoi eseguire e modificare.
Contesto
Perché imparare Go per lavorare sul backend e cosa lo rende diverso?
Go è un linguaggio compilato e tipizzato staticamente, creato da Google e ampiamente usato per servizi web, strumenti da riga di comando e infrastrutture cloud. Il suo punto di forza per il backend è che molte funzionalità sono già integrate: la concorrenza fa parte del linguaggio, la libreria standard copre gran parte di ciò che serve a un piccolo servizio e un programma viene compilato in un singolo binario, senza nulla da installare oltre a esso. Il linguaggio è volutamente essenziale: questo lo rende rapido da leggere, ma richiede ai principianti di imparare presto alcune abitudini poco familiari.
Goroutine e channelconcorrenza senza gestire i thread
Una goroutine è una funzione avviata con la parola chiave go, mentre un channel è il canale che le goroutine usano per passarsi i valori. Insieme sostituiscono la maggior parte della gestione manuale dei thread, ed è per questo che la concorrenza viene insegnata fin dall'inizio invece di essere lasciata agli argomenti avanzati.
Gli errori sono valorinessuna eccezione
Una funzione Go che può fallire restituisce un errore come normale secondo valore, che il chiamante verifica subito. Richiede più codice rispetto a un blocco try, ma fa sì che ogni percorso di errore sia visibile nel codice che stai leggendo.
Interfacce impliciteduck typing, verificato in fase di compilazione
Un tipo soddisfa un'interfaccia semplicemente avendo i metodi corretti: non è necessario dichiarare nulla. Questo mantiene i pacchetti debolmente accoppiati ed è anche il punto in cui si nasconde una classica sorpresa di Go: un'interfaccia che contiene un puntatore nil non è a sua volta nil.
Un singolo binario e una grande libreria standardperché il deployment è semplice
Go compilato produce un singolo eseguibile e pacchetti come net/http, encoding/json e database/sql sono inclusi nel linguaggio. Spesso un piccolo servizio non ha bisogno di framework di terze parti: è uno dei motivi per cui le immagini Docker dei programmi Go possono essere leggere.
Adatta
A chi è adatta — e a chi no
Fa al caso tuo se
- Vuoi un corso di Golang da seguire in brevi sessioni sul telefono
- Scrivi già in un altro linguaggio e vuoi vedere goroutine e channel in esecuzione
- Punti a ruoli backend o cloud e vuoi domande da colloquio su Go con feedback valutato
- Impari meglio con piccoli esercizi e schede sui casi insidiosi che con video lunghi
- Vuoi controllare la formattazione, i risultati di vet e le data race sul codice che hai scritto tu
Non è lo strumento giusto se
- Devi eseguire programmi che importano net/http o usano i generics nell’esecutore integrato nell’app, che è una sandbox Go 1.13
- Vuoi eseguire il codice senza connessione, perché l’esecutore è online
- Ti aspetti che sia tutto gratuito: il primo corso, la kata giornaliera e una quota giornaliera di Mentor AI sono gratuiti, mentre Pro sblocca tutto il resto
- Devi creare e distribuire un servizio grande composto da molti package, un’attività che richiede comunque un laptop e l’intera toolchain
Domande
Domande frequenti
Qual è il modo migliore per imparare Golang sul telefono?
Le lezioni brevi abbinate a codice che esegui davvero sono più efficaci della sola lettura, e Go premia l’esecuzione pratica perché le sue funzionalità migliori, le goroutine e il race detector, si manifestano nel comportamento del programma. Imparare Go: Corso Code abbina lezioni di pochi minuti a un editor, una kata giornaliera e un Concurrency Lab. Puoi iniziare gratuitamente su iOS e Android, con 51 corsi ordinati dal livello principiante a quello avanzato.
Puoi compilare ed eseguire codice Go sul telefono?
Sì, con una connessione. Imparare Go: Corso Code invia il tuo programma a un esecutore Go e ne mostra l’output; lo stesso esecutore fornisce gofmt, go vet e il race detector. Il codice non viene eseguito direttamente sul telefono, quindi devi essere online quando premi Esegui, e l’esecutore ha dei limiti, come una piccola quantità di memoria disponibile e una dimensione massima del binario.
L’esecutore integrato nell’app supporta i generics?
Non ancora. L’esecutore di Imparare Go: Corso Code usa Go 1.13, mentre i generics sono arrivati in Go 1.18, quindi un programma che utilizza parametri di tipo o la keyword any non verrà compilato. Quando succede, l’app lo spiega in modo semplice e suggerisce la forma precedente. Il corso sui generics è comunque disponibile per la lettura come lezione.
Cos’è il race detector di Go e come lo usa l’app?
Il race detector segnala quando due goroutine accedono alla stessa memoria senza un lock tra loro, un bug che si manifesta solo alcune volte. In Imparare Go: Corso Code, il Concurrency Lab esegue sotto il detector esercizi come un contatore aggiornato da 200 goroutine e ti permette di aggiungere un mutex ed eseguire di nuovo il codice. Puoi anche incollare il tuo codice con goroutine ed eseguirlo sotto il detector.
Cos’è una kata di Go?
Una kata è un piccolo esercizio mirato che risolvi scrivendo codice, ad esempio invertire correttamente una stringa contenente testo non-ASCII oppure fare il wrapping di un errore in modo che errors.Is possa ancora trovarlo. Imparare Go: Corso Code propone ogni giorno una nuova kata, controlla la tua funzione su una tabella di casi che include anche casi nascosti e spiega l’idiom utilizzato alla fine. La kata giornaliera è gratuita per tutti.
Serve esperienza di programmazione per iniziare?
No. Imparare Go: Corso Code inizia spiegando cos’è Go e perché esiste, poi passa a variabili, tipi e controllo del flusso; ogni concetto viene spiegato in linguaggio semplice prima di essere messo in pratica. L’esperienza con un altro linguaggio ti aiuta a procedere più velocemente nei primi corsi, ma il primo corso è pensato per chi parte da zero.
Learn Go è gratuito?
L’app è gratuita da scaricare. Il primo corso è gratuito, così come la kata giornaliera, una quota giornaliera di Mentor AI, controlli gofmt illimitati, esecuzioni illimitate sotto il race detector e alcune esecuzioni di go vet al giorno. Pro sblocca tutti i corsi, rimuove gli annunci, offre Mentor AI illimitato e apre la libreria delle kata e l’escape analysis.
C’è un certificato alla fine?
Sì. Superare l’esame finale ti dà un certificato di completamento del corso. Mostra il lavoro che hai svolto e si abbina bene a un piccolo progetto che puoi illustrare durante un colloquio, ma non è una qualifica accademica accreditata.
Learn Go aiuta a prepararsi ai colloqui su Golang?
Sì. Il colloquio simulato propone cinque domande a livello junior, mid o senior, dagli slice rispetto agli array fino a cosa contiene un valore di interfaccia durante l’esecuzione, e valuta le tue risposte fornendo feedback. Le schede Go Recall fanno esercitare sui comuni casi insidiosi, mentre gli argomenti più deboli emersi durante un colloquio vengono aggiunti al tuo mazzo di ripasso. Un colloquio valutato a settimana è gratuito.
Quali piattaforme e linguaggi supporta?
Imparare Go: Corso Code funziona su iOS tramite App Store e su Android tramite Google Play, e l’interfaccia è disponibile in 22 lingue. Ha una classificazione 4+, quindi nulla nei contenuti è soggetto a limiti di età.
Altro da CoddyKit
Disponibile su iOS e Android.