linguaggio di sistema

c++ essentials

per chi vuole controllo totale: prestazioni, memoria e architetture robuste.

livello: base → avanzato tempo: 10 ore output: applicazioni native

perché c++

c++ offre controllo diretto su memoria e prestazioni, ma richiede disciplina. è ideale per sistemi critici, realtime, tooling e software ad alte prestazioni.

focus: ownership, efficienza, standard moderno (c++17/20).

setup ambiente

usa un compilatore moderno (clang o gcc) e un editor con linting.

# mac
brew install llvm

# compile
c++ -std=c++20 main.cpp -o app
./app

hello world

#include <iostream>

int main() {
    std::cout << "hello, c++" << std::endl;
    return 0;
}

in c++ ogni programma parte da main. usa std::cout per output.

memoria e risorse

adotta il principio raii: le risorse vengono liberate quando l'oggetto esce dallo scope.

#include <vector>

std::vector<int> values = {1,2,3};
// la memoria viene gestita automaticamente

prossime lezioni

lezione 01

fondamenti e compilazione

tipi, header, build, errori comuni.

apri

lezione 02

puntatori e smart pointer

raw pointers, ownership e gestione sicura.

apri

lezione 03

classi e oop moderna

costruttori, polimorfismo, best practice.

apri

lezione 04

stl e algoritmi

container e algoritmi standard.

apri

lezione 05

templates e generic programming

riuso e astrazione con template.

apri

lezione 06

build system con cmake

progetti multi-file e dependency.

apri

lezione 07

concorrenza e thread

thread, mutex e async.

apri

lezione 08

performance e profiling

benchmark, profiling, cache.

apri

lezione 09

architettura moderna

api stabili, pimpl e design pulito.

apri

approfondimenti

lezioni bonus per spingere memoria, concorrenza e design al livello successivo.

bonus

memoria moderna in c++

smart pointer e move semantics.

apri

bonus

concorrenza e multithreading

thread, mutex e atomic.

apri

bonus

performance e profiling

benchmark, cache e ottimizzazione.

apri

bonus

design di api e pattern

pimpl, architetture e pattern moderni.

apri
start a brief