lezione 10

architettura

layer, dto e clean structure.

livello: avanzato durata: 30 min output: app scalabile badge: typescript essentials

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
start a brief