Versão atual:

Regras de negócio no padrão MVC

Olá a todos, eu sou programador PHP a cerca de 8 anos, sempre ouvi muita gente falar mau do PHP e sempre fiquei chateado por que eu não conseguia entender o por que de uma linguagem tão boa, ser tão criticada. Resolvi dar uma estudava em JAVA e C#.net e vi que realmente o PHP tem algumas desvantagens e a principal dela é a comunidade. A maioria dos programadores PHP são bons em resolver coisas e não em trabalhar de forma profissional seguindo padrões e é nesse ponto que eu quero chegar.

Eu trabalho com alguns Frameworks em PHP que utilizam o padrão M.V.C., a minha dúvida não se restringe a uma linguagem em especifico mas sim a como trabalhar com orientação a objetos.

Seguindo os princípios de SOLID, uma classe e seus métodos não devem ter mais de uma responsabilidade. Então uma classe de Model não deve conter regras de negócio da aplicação, assim como o controlador também não deve ter essa responsabilidade. A questão é: Onde coloco essas regras de negócio? Crio uma pasta separada só para poder elas?

Atualmente eu coloco nos controladores, mas já percebi que isso é extremamente errado, por que além de ferir o princípio de Single Responsibility o meu programa acaba tendo código duplicado pela aplicação, o que prejudica a manutenção.

Estou estudando JAVA, mas infelizmente ainda não tenho conhecimento suficiente para desenvolver uma aplicação completa ( por mais simples que seja ) usando apenas JAVA, então por enquanto ainda estou usando o PHP.

Versão(1):

Ver a versão formatada

Regras de negócio no padrão MVC

Comentário

new question