Estou com uma dúvida pertinente quanto a regras de negócios em sistemas web.
Seguem os mesmos principios das regras de negócio para softwares “convencionais”???
Esse é um exemplo de regra de negócio correto para um projeto web? O site deve sempre apresentar as redes sociais na página principal, onde cada link deverá direcionar para sua página especifica, a ordem de exibição será definida pelo administrador do site.
Acho que regra de negócio é aquilo que não depende da forma que esta apresentando os dados e sim da maneira que trata os dados.
Quando criar a camada de negócio imagine que vai usar ele para qualquer sistema independentemente da tecnologia utilizada para todo seu Business (empresa).
Porem é claro que exitem regras de navegação e forma de apresentação que também queremos aproveitar do OO e também evitar misturar na camada de apresentação … neste caso acho que pode-se usar Classes utilitárias com as regras EX: RegrasPortalUtil ou efetuar as validações na camada de controller responsável por interfacear com as camadas acima de negocio e dados.
Resumindo você tem regras de navegação que não são regras de negócio e regras de negocio que tratam dados e a cominicação com a camada de persistencia.
Esta é minha forma de enxergar porem existem outras formas de ver as coisas como no caso de “Entidades Anêmicas” …
I
iamthelegend
Isso esta parecendo mais com use case de sistema…
É como jcarlos falou, não misture as coisa. Inicialmente regras de negócio são apenas regras de negócio, depois sim que você vai pensar em como atender estas regras de negócio.
R
ruivo
Meu caro, para entender o que são regras de negócio, tente fazer o seguinte exercício:
Como eu executaria essa atividade sem tecnologia?
Se você conseguir fazer essa abstração, você provavelmente tem uma regra de negócio.
Exemplo: Emitir uma nota fiscal
O CPF deve ser preenchido
O CPF deve ser válido
O valor da nota deve ser igual à soma dos valores dos ítens mais o valor do imposto a ser cobrado
Como você pode ver, você pode validar essas regras mesmo sem nenhuma tecnologia. Uma pessoa pode emitir uma nota fiscal em papel e caneta como pode ter um sistema que preencha eletronicamente.
F
Fellipex
Outro exemplo:
Tenho uma tela de cadastro de funcionário. Para eu cadastrar algum funcionário na empresa preciso ter algumas informações básicas.
Como sendo obrigatório os seguintes campos :
Nome(Todo Funcionário necessita ter um nome)
CPF
Salário
Função
Logo isto é uma regra de negócio no qual um programador vai levar a especificação corresponde ao desenvolvimento da tela de cadastro de funcionário , e fara todas regras e validações para só permitir salvar
caso os campos OBRIGATÓRIOS sejam preenchidos. Lógico podem haver mais campos essencialmente necessários mas isto é só um exemplo de regra de negócio.