Fornisci tre importanti principi di ingegneria del software.
1. Separazione delle Preoccupazioni: Separare l'applicazione in sezioni distinte, ognuna con uno scopo specifico.
2. Design Modulare: Suddividere le applicazioni in moduli autocontenuti e indipendenti.
3. Astrazione: Nascondere i dettagli non necessari e concentrarsi sulle attività essenziali.