Aqueles de vocês que tiveram aulas com o prof. Clóvis devem se lembrar dos infinitos discursos sobre padrões de projeto: aquelas padronizações que são utilizadas em código para “simplificar” a nossa vida e tornar o mundo mais bonito. Como o próprio Java e seus infinitos frameworks com um milhão de padrões de projeto estão aí para provar, muitos vezes o que você ganha em termos de “reuso” de código com o uso excessivo destes padrões, acaba perdendo em código de configuração, complexidade e dificuldade de debug. No final seu código acaba ficando maior, mais emaranhado, e só pode ser compreendido por especialistas na tecnologia/framework utilizado.
Vejam só este artigo: Design Pattern Berserk . Nele o author consegue a proesa de usar uns 7 padrões de projeto num hello world, vejam que beleza que fica. Quem entender todo o código, de 160 linhas, ganha um chocolate!
Está é a beleza do Rails: implementa os padrões de projeto mais importantes para a web (MVC e ActiveRecord), sem adicionar complexidade (por causa do infinitos códigos de configuração e housekeeping). Na medida certa, com simplicidade. Sem exargerar como o Java e todos os seus feijões mágicos.