Herança visual e adaptação de um Data Module em WinForms

19/09/2005

0

Olá Pessoal, tranquilos?

Ok, estou desenvolvendo aqui um protótipo de uma aplicação .Net usando, claro, WindowsForms. Só que eu estou meio cabreiro com essas aplicações WinForm. :x
1) Não temos DataModules, coisa que facilitava e muito na separação das regras da interface. Precisamos ficar ´poluindo´ os formulários. Tentei adaptar os formulários fazendo de DataModules mas não consigo ligar um componente Grid p.ex a um DataSet ou DataView lá no meu DataModule armengado.

2) A herança visual e de código mesmo é meio chata de fazer pq os componentes colocados na tela muitas vezs se perdem sem q nem pra q.

Alguém já está trabalhando profissionalmente com WinForm pra me dar uma idéia de como adaptar um DataModule e trabalhar com herança direitinho, ou é muito difícil isso em WinForms?

Abraço


Paulo Trajano

Paulo Trajano

Responder

Posts

19/09/2005

Rjun

Quando se programa em .NET, deve-se esquecer os Data Modules. Você deve trabalhar com arquitetura de 3 camadas. Uma camada para interface, outra para regras de negócio e outra para acesso a banco de dados. Os programadores Java tem calafrios só de ouvirem falar nesse negócio de pegar um dataset, arrastar e ligar num grid. No mundo .NET alguns conceitos de programação devem ser revistos.


Responder

19/09/2005

Paulo Trajano

Então temos que trabalhar com .Net Remoting propriamente dito?


Responder

19/09/2005

Rjun

Eu estou começando em .NET agora, mas o fato de ser em 3 camadas não quer dizer que o banco de dados está em outra máquina, que as regras de negócios em outra e o cliente em outra. Você pode ter tudo na mesma máquina. Dê uma olhada nesse [url=http://www.projetando.net/Sections/ViewArticle.aspx?ArticleID=14]artigo[/url]. É bem interessante.


Responder

19/09/2005

Paulo Trajano

É, essa minha experiência com .Net não está sendo nada agradável. Não estou me sentindo nada à vontade com ´ele´. A parte visual é toda fresca. Não tem a ´agilidade´ do Win32. Está acontecendo que quando eu alterno com F12, entre o código e o design ele perde o componente, mas a referência dele fica lá atrás.
Posso estar sendo precipitado ou preconceituoso, mas não estou gostando. :?


Responder

19/09/2005

Rjun

Vc está usando D8 ou D2005? Tive uma experiência com D8 e foi muito triste. Agora para .NET estou usando VS 2003, na minha opinião bem melhor e mais rápido que o Delphi. Ja baixou as atualizações por Delphi. Talvez isso ajude. A mudança para .NET realmente é complicado. A Orientação a Objeto é de fundamental importância, senão não sai nada. No que eu puder ajudar é só postar suas dúvidas.


Responder

19/09/2005

Paulo Trajano

Rogério, obrigado pela disponibilidade. Estou usando o D2005. Olha só, acabei de descobrir como se faz uma chamada a um método em otura unit (simulando assim, a separação das camadas): No win32 fazíamos referência à unit desejada e digitávamos

Unit.Metodo(Parametro);


Em .Net se faz assim

Unit.Create.Metodo(Parametro);


Estava me batendo pra fazer isso e já tava ficando triste. Pelo menos uma coisa boa.

Mas ainda não sei como fazer essa separação das regras e apresentação sem ser dessa forma.


Responder

19/09/2005

Otto

tchutchuco, tb to iniciando no .net e posso te garantir, vc irá gostar daqui a um tempo. comece a esquecer essa forma rad ;)


ai Rjun, o link nao funfou nao :(


Responder

20/09/2005

Paulo Trajano

Mas o pior de tudo oTTo é que nós não trabalhamos RAD de forma alguma, pelo contrário, nossa estrutura é toda voltada para herança visual e de código. Do jeito que foi apresentado pra mim no curso de .Net, a fora de se trabalhar é totalmente RAD.

E uma correção: Não sei pq, mas depois que eu postei o código acima eu fui fazer do mesmo jeito e ñ funcionou mais. Funcionou do jeito antigo. :?


Responder

20/09/2005

Rjun

oTTo, tenta de novo no link...parece que está tudo ok..


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar