Se eu disser que tenho uma estrutura hierárquica de entidades, em vez de um modelo de componente. Algo como:
(Sim, isso é feito)
Arma-> Arma-> Arma Automática-> MP44
Ou, mais um exemplo clássico:
Entidade-> MovableEntity-> Inimigo-> WalkingEnemy
Até que ponto você dividiria os arquivos de origem / cabeçalho para facilitar a leitura e a organização? É melhor usar algo como Entity.cpp, MovableEntity.cpp, Enemy.cpp, etc., ou seria melhor uma abordagem como Entity.cpp [contendo Entity and MovableEntity] e Enemy.cpp [contendo Enemy e WalkingEnemy]? (Ou de uma maneira mais independente do idioma, um arquivo Inimigo e um arquivo de Entidade versus um arquivo para cada classe?)
Além disso, isso afetaria algo além de legibilidade e organização?
language-agnostic
seja uma tag apropriada, pois depende muito do idioma que você está usando quanto aos efeitos colaterais.