1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

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.

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

3 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags java php frameworks orientação-a-objetos design-patterns ou faça a sua própria pergunta.