Olá pessoal, gostaria de tirar uma dúvida sobre MVC.
Digamos que eu tenha a classe Veiculo e a classe Fabricante. cada veículo possui um fabricante como atributo, dentre outros atributos.
Tenho as views para manter (cadastrar, editar e excluir) e buscar veículo e também fabricante.
Cada classe modelo tem seu controller (decidi criar 1 controle por modelo, ao invés de criar um controle por view).
Ou seja, a classe controlVeiculo será acessada por mais de uma view e terá os métodos
+listarVeiculos()
+salvarVeiculo(Veiculo v)
+editarVeiculo(Veiculo v)
+excluirVeiculo(Veiculo v)
(…)
que por sua vez acessa as classes DAO. Bem como a classe controlFabricante terá os mesmos métodos para fabricante.
A minha dúvida é a seguinte:
Quando eu chamar a view para cadastrar veículo, por exemplo, vou precisar listar os fabricantes já cadastrados no banco para a escolha do usuário.
Essa lista de fabricantes deve vir da onde?
- crio uma instância do controlFabricante dentro da viewVeiculo e chamo o método normalmente?
- deixo a minha viewVeiculo somente acessando o seu controle (controlVeiculo) e crio um método no controlVeículo para acessar a DAOFabricante?
- deixo a minha viewVeiculo somente acessando o seu controle (controlVeiculo) e, ao invés de criar um método no controlVeículo, eu crio uma instância do controlFabricante dentro de controlVeiculo e chamo o método entre os controllers (já que já tem um método definido no outro controle, evitando duplicar métodos)
- alguma outra sugestão?
Espero que tenha ficado claro minha dúvida.
Obrigado