otaku@manifesto:~$ cat OTAKU.md
La struttura è una decisione,
non un incidente.
OTAKU è una filosofia per il software orientato agli oggetti. Cinque vincoli decidono cosa può esistere nel codice; tre forme decidono come si organizzano i repository. Nulla qui appartiene a un linguaggio — solo al paradigma.
Perché esiste
I framework sono eccellenti finché non devi sostituire un pezzo — e allora pretendono che tu li sostituisca tutti. La via d’uscita abituale è la riscrittura, che scambia un insieme di vincoli accidentali con un altro. OTAKU scommette il contrario: architettura fatta di parti abbastanza piccole da capire in una volta, e sostituibili senza permesso.
Il nome è un acronimo e anche un temperamento: ossessione tecnica per la padronanza, la disciplina e la purezza strutturale — la volontà di eliminare un’astrazione ingegnosa perché non sta in una frase.
Come leggere questo libro
Il manifesto
Cinque pilastri, quaranta regole misurabili, una metrica principale.
02Le tre forme
Atomo, assemblaggio, applicazione. Ogni repository è esattamente una.
03La guida
Come applicarla, con codice in PHP, C#, Java, C++ e TypeScript.
Cosa rifiuta
- Framework che filtrano nel livello di dominio.
- Repository che non si classificano come atomo, assemblaggio o applicazione.
- Astrazioni create prima del secondo caso d’uso reale.
- Metodi con complessità ciclomatica superiore a 5.
- Interfacce pubblicate senza contratto.
Scrivi codice che non avrà mai bisogno di «riparazioni» perché è stato costruito sotto vincolo assoluto.
Ambito
OTAKU è nato dentro PHPRise, ma PHP è solo il punto di partenza. Le regole misurano indentazione, complessità, dipendenze, contratti e denominazione — concetti che ogni linguaggio orientato agli oggetti esprime. La guida copre PHP, C#, Java, C++ e TypeScript.
Se il tuo linguaggio ha classi, interfacce, eccezioni e un package manager, la filosofia si applica. Se non li ha, non è lo strumento giusto — e questa è una risposta legittima.
Questo capitolo è per ora disponibile solo in inglese.