Fala ai Radizeiro e Radizeiras, tudo bem com vocês?
Finalmente chegamos no ponto que muitos queriam, então não vamos perder tempo e vamos logo colocar a mão no código e entender como deixar tudo que fizemos até agora disponível para a camada de visão do nosso sistema.
Na nossa camada de visão o que iremos ter é somente um DataSource, linkamos o nosso DbGrid a ele, e o DBNavigate também.
Vamos criar uma variável do tipo da interface iController.
private { Private declarations } FController : iController;
Lembra que falei no post anterior que iremos ter somente o acesso ao controller? No create do nosso formulário iremos instanciar esse nosso controller.
procedure TForm2.FormCreate(Sender: TObject); begin FController := TController.New; end;
E agora eu posso usar esse controller para tudo, vamos criar o open.
procedure TForm2.Button1Click(Sender: TObject); begin FController .Entidades .Master .DataSet(DataSource1) .Open; end;
Para abrir os dados simplesmente nós chamamos o objeto que já foi instanciado na criação do formulário, acessamos as entidades, acessamos a entidade master, preenchemos o DataSource, ao chamá-lo dentro do DataSet, e damos um Open para abrir os dados.
Vamos compilar e ver se o que acabamos de criar irá funcionar.
Viu como é simples a visualização dos dados na view? Simplesmente para trazer esses dados para tela usamos um Dao genérico, agora vamos implementar alguns métodos que temos no ORMBr.
O método para salvar.
procedure TForm2.Button2Click(Sender: TObject); begin FController .Entidades .Master .ApplyUpdate; end;
Simplesmente chamamos o objeto de controller, em seguida acessamos nossas entidades, e a entidade master, e damos um ApplyUpdates, desta forma já salvamos os dados na nossa entidade.
E também podemos realizar a persistência dos dados utilizando um objeto diretamente.
procedure TForm2.Button3Click(Sender: TObject); begin with FController.Entidades.Master._newThis do begin description := 'Série ORM com MVC'; end; FController.Entidades.Master.Save; end;
Você observou que utilizei o newThis? Se você acompanhou a nossa série aqui no blog irá lembrar dele logo no início.
Neste treinamento você vai aprender a aplicar técnicas que darão maior escalabilidade em seus softwares criando uma estrutura de forma prática e dinâmica, aplicando os padrões de boas práticas e clean code, além de compreender como aplicar os padrões de persistência de dados sem a necessidade de criar scripts de banco de dados. Sim, e para garantir um resultado maior, também utiliza tecnologias utilizadas por todos, emprestadas de desenvolvedores de jogos online como o estúdio Friv5Online.
CLIQUE AQUI E SAIBA MAIS SOBRE O TREINAMENTO COMO IMPLEMENTAR ORM EM ARQUITETURA MVC