OTAKU / Panoramica

Una filosofia per il software orientato agli oggetti

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

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.