Videocorso Nim CGFA
Da zero a programmare in Nim: leggibile come Python, veloce come C
- Partenza: Base
- 12 ore con gli esercizi
- 10 lezioni in 3 livelli
- 2 lezioni gratis
A chi serve
Chi ha già scritto qualche riga in un altro linguaggio (anche Python) e vuole programmi veloci, piccoli e facili da leggere
Cosa serve per iniziare
- Un computer Windows, Mac o Linux
- Aver visto almeno le basi di un linguaggio (variabili, if, cicli)
- Saper aprire un terminale
Cosa installare
A cosa ti serve
- Strumenti da riga di comando veloci e leggeri
- Programmi di sistema e server
- Giochi e grafica
- Siti e script che compilano in JavaScript
- Sostituire script Python troppo lenti
Programma del corso
10 lezioni in 3 livelli. Ogni lezione: video, spiegazione, codice da copiare o provare, esercizio con soluzione e quiz.
Base
Installare Nim e scrivere i primi programmi
Intermedio
Procedure, oggetti, errori e file
Avanzato
Generici, velocità, JSON e programmazione asincrona
Progetto finale: Il registratore di cassa
Scrivi un programma che gestisce lo scontrino di un negozio: un elenco di articoli con prezzo e quantità, ordinato per prezzo, con imponibile, IVA al 22 per cento e totale a due decimali.
I passi
- Crea il file cassa.nim.
- Definisci l'object Articolo con nome, prezzo e quantità.
- Scrivi la proc totale che calcola prezzo per quantità.
- Crea la seq degli articoli e ordinala per prezzo con sort e cmp.
- Con un ciclo for stampa ogni riga e somma l'imponibile.
- Calcola l'IVA e stampa imponibile, IVA e totale con fmt.
- Compila con "nim c -r cassa.nim" e poi con -d:release.
Esame e attestato
Alla fine del corso fai l'esame: 15 domande, serve il 75% di risposte giuste. Superato l'esame ottieni l'attestato stampabile con nome, ore, punteggio e un codice di controllo che chiunque può verificare.
Glossario di Nim
- Compilatore
- Il programma che traduce il codice Nim in C e poi in un eseguibile.
- let, var, const
- Tre modi di dichiarare: fisso, modificabile e calcolato in compilazione.
- proc
- La parola con cui si definisce una procedura o funzione.
- seq
- Una sequenza che cresce, scritta con @[ ... ].
- Table
- Un dizionario che associa una chiave a un valore.
- object
- Un tipo che raggruppa più campi con un nome.
- Tupla
- Un piccolo gruppo di valori, con o senza nomi.
- UFCS
- La chiamata con il punto: x.f() equivale a f(x).
- Generico
- Una proc o un tipo che funziona con tipi diversi, scritta con [T].
- Template
- Un modello di codice che il compilatore copia dove lo usi.
- ORC
- La gestione della memoria predefinita di Nim 2, basata sul conteggio dei riferimenti.
- Nimble
- Il gestore dei pacchetti e dei progetti di Nim.
Le prime 2 lezioni sono gratis
Per il corso completo, scuole e aziende: chiedi le condizioni.