architettura
export interface Repo { list(): Promise<Project[]>; }
classi
class Camera {
constructor(public model: string) {}
}
interface
interface Project { id: number; name: string; }
modules
export const version = "1.0";
import { version } from "./config";
esercizi
definisci un'interfaccia per il repository.
export interface Repo { list(): Promise<Project[]>; }
panoramica
In questo capitolo su architettura lavoriamo su architettura, classi, interface, modules per creare micro-pattern riutilizzabili.
lavora in sequenza: leggi, prova, modifica gli snippet e annota i trade-off principali.
badge: typescript essentials
obiettivi
- capire e applicare architettura in uno scenario reale
- capire e applicare classi in uno scenario reale
- capire e applicare interface in uno scenario reale
- capire e applicare modules in uno scenario reale
scheda rapida
export interface Repo { list(): Promise<Project[]>; }
adatta questo scheletro agli esempi della lezione.
tips
- attiva strict
- evita any
- usa type alias chiari
- separa layer e dto
- mantieni funzioni pure
- mantieni architettura leggibile
tip: documenta ogni scelta architetturale.
mini progetto
separa domain e data layer.
- crea interface
- implementa repo
- usa in service
output atteso: layer separati.
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