OTAKU / Visão geral

Uma filosofia para software orientado a objetos

otaku@manifesto:~$ cat OTAKU.md

Estrutura é uma decisão,
não um acidente.

OTAKU é uma filosofia para software orientado a objetos. Cinco restrições decidem o que pode existir no código; três formas decidem como os repositórios se organizam. Nada aqui pertence a uma linguagem — apenas ao paradigma.

Por que isso existe

Frameworks são excelentes até você precisar substituir uma peça — e então exigirem que você substitua todas. A saída habitual é a reescrita, que troca um conjunto de restrições acidentais por outro. OTAKU aposta no contrário: arquitetura feita de partes pequenas o bastante para entender de uma vez, e substituíveis sem pedir permissão.

O nome é um acrônimo e também um temperamento: obsessão técnica por domínio, disciplina e pureza estrutural — a disposição de apagar uma abstração esperta porque ela não cabe em uma frase.

Como ler este livro

O que ele recusa

  • Frameworks vazando para a camada de domínio.
  • Repositórios que não se classificam como átomo, assembly ou aplicação.
  • Abstrações criadas antes do segundo caso de uso real.
  • Métodos com complexidade ciclomática acima de 5.
  • Interfaces publicadas sem contrato.
Escreva código que nunca precise de “conserto” porque foi construído sob restrição absoluta.

Escopo

OTAKU nasceu dentro do PHPRise, mas o PHP é apenas onde começou. As regras medem indentação, complexidade, dependências, contratos e nomes — conceitos que toda linguagem orientada a objetos expressa. O guia cobre PHP, C#, Java, C++ e TypeScript.

Se a sua linguagem tem classes, interfaces, exceções e um gerenciador de pacotes, a filosofia se aplica. Se não tem, esta não é a ferramenta certa — e isso é uma resposta legítima.

Este capítulo está disponível apenas em inglês no momento.