lezione 01

fondamenti e sintassi

variabili, tipi, funzioni, optional e controllo di flusso.

livello: base durata: 20 min output: script base badge: swift essentials

variabili e tipi

let nome = "Samir"
var anno = 2026
let attivo: Bool = true

usa let per costanti e var per valori che cambiano.

funzioni

func saluta(_ nome: String) -> String {
  "ciao \(nome)"
}
print(saluta("studio"))

mantieni le funzioni corte e con output prevedibile.

optional e guard

let city: String? = "Catania"
guard let city = city else { fatalError("no city") }
print(city)

controllo di flusso

let level = 2
switch level {
case 1: print("base")
case 2: print("intermedio")
default: print("avanzato")
}

esercizi

crea un array di elementi e trasformalo con map.

struct Item { let id: Int; let name: String }
let items = [Item(id: 1, name: "A"), Item(id: 2, name: "B")]
let names = items.map { $0.name }
print(names)

panoramica

In questo capitolo su fondamenti e sintassi lavoriamo su variabili e tipi, funzioni, optional e guard, controllo di flusso per creare micro-pattern riutilizzabili.

lavora in sequenza: leggi, prova, modifica gli snippet e annota i trade-off principali.

badge: swift essentials

obiettivi

  • capire e applicare variabili e tipi in uno scenario reale
  • capire e applicare funzioni in uno scenario reale
  • capire e applicare optional e guard in uno scenario reale
  • capire e applicare controllo di flusso in uno scenario reale

scheda rapida

let nome = "Samir"
var anno = 2026
let attivo: Bool = true

adatta questo scheletro agli esempi della lezione.

tips

  • preferisci value types quando possibile
  • usa guard per early exit
  • mantieni le view leggere
  • separa networking e ui
  • scrivi test su logica critica
  • mantieni variabili e tipi leggibile

tip: documenta ogni scelta architetturale.

mini progetto

crea un tracker di progetti con struct e collezioni.

  • definisci Project
  • aggiungi array di Project
  • filtra e stampa

output atteso: lista progetti filtrata.

checklist

  • ho eseguito gli snippet e controllato l'output
  • ho annotato almeno 2 trade-off
  • ho completato il mini progetto
  • ho salvato un riepilogo personale
start a brief