DISPOSE EM CLASSES

 Tópico anterior Próximo tópico Novo tópico

DISPOSE EM CLASSES

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#482029 - 31/05/2018 13:08:12

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Kerp, eu tenho uma outra classe de Conexão, que faz a chamada ao banco onde sao metodos Shared, é um problema?

__________________________________
- Everyone has a chance


#482030 - 31/05/2018 13:20:26

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Me tira uma duvida, todos os métodos que que instancio eles se mantem? mesmo que chegue no fim do bloco? se eu colocar um método em uma text no evento TextChanged, a cada letra digitada instancia e fica instanciada? teria que implementar o iDisposable em tudo praticamente então? levando em consideração performasse???

__________________________________
- Everyone has a chance


#482032 - 31/05/2018 15:45:32

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Amigo, a coisa não é assim "tirando dúvidas conforme aparecem", sugiro que estude muito bem OOP e como todas essas coisas funcionam. Se você está baseando seu aprendizado em pedacinhos de código aqui e ali, você está indo pelo caminho errado

_______________________________________________________________________
Gostaria de ter seu sistema Desktop "traduzido" para uma interface web? Podemos conversar...
Virei Oráculo!
The end is nigh, be ready for the nukes!


#482035 - 31/05/2018 19:50:40

JABA
CABO FRIO
Cadast. em:Agosto/2005


Citação:
Me tira uma duvida, todos os métodos que que instancio eles se mantem? mesmo que chegue no fim do bloco? se eu colocar um método em uma text no evento TextChanged, a cada letra digitada instancia e fica instanciada? teria que implementar o iDisposable em tudo praticamente então? levando em consideração performasse???


Cara, ao meu ver, não é necessário implementar isso, isso só é necessário em casos muito específicos. Você estaria poluindo as suas classes sem ter benefício algum. Geralmente, os objetos relacionado a dados já implementam a interface iDisposable, bastando apenas usar o tal do USING para a liberação dos recursos. Fazendo isso, não demorará muito para o garbage collector liberar memória. Toda essa responsabilidade deverá estar embutida na camada DAL. Quando você precisar trabalhar com transação, faça isso numa camada de serviços, assim as responsabilidades de seu projeto serão bem distribuídas. Ou seja, objetos burros, deixe com o Dal; objetos mais espertos, que iniciam num ponto e terminam no outro, deixe para a camada de serviços.

Veja os links abaixo para um melhor esclarecimento:

pt.stackoverflow.com/questions/22284/devo-sempre-utilizar-dispose

robsoncastilho.com.br/2014/04/16/introduzindo-a-camada-de-aplicacao/



_______________________________________________________________________________________________

Se a alma ou espírito são imateriais, como eles fazem para se localizarem quando o corpo está em movimento?



#482036 - 31/05/2018 19:55:35

JABA
CABO FRIO
Cadast. em:Agosto/2005


Citação:
Kerp, eu tenho uma outra classe de Conexão, que faz a chamada ao banco onde sao metodos Shared, é um problema?


Em se tratando de conexão, existe uma maneira bem elegante de tratar isso. Veja esse link:

www.macoratti.net/13/07/adn_mfg1.htm


_______________________________________________________________________________________________

Se a alma ou espírito são imateriais, como eles fazem para se localizarem quando o corpo está em movimento?



#482038 - 01/06/2018 14:26:11

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Digamos que eu gere um controle (UserControl) e dentro do controle é onde está todo o comando e instancia da classe, se no contêiner pai eu colotar Controle.Dispose() ele estaria descartando as classes?

__________________________________
- Everyone has a chance


#482040 - 01/06/2018 14:29:15

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Citação:
:
Amigo, a coisa não é assim "tirando dúvidas conforme aparecem", sugiro que estude muito bem OOP e como todas essas coisas funcionam. Se você está baseando seu aprendizado em pedacinhos de código aqui e ali, você está indo pelo caminho errado

Então, kerp, creio que seja da forma errada, mas eu aprendi assim, aparecendo os problemas de descobrindo o porque.. Até alguns messes atrás, fazia conexão junto do framework e jogava em uma grid, e rodava a grid para manipular os dados

__________________________________
- Everyone has a chance


#482041 - 01/06/2018 15:15:42

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Citação:
:
Digamos que eu gere um controle (UserControl) e dentro do controle é onde está todo o comando e instancia da classe, se no contêiner pai eu colotar Controle.Dispose() ele estaria descartando as classes?


Fiz uns testes aqui, e parece que não discarta, continua executando, porque funciona assim;

Contêiner Pai (form1)

Contêiner Filho (UserControl1)

Contêiner Filho do Filho (UserControl2)

Form 1 Adiciona o Control1 e o Control1 tem um timer que roda a cada 5 segundos adicionando Control2

Reparei que se fechar o Form1, o control1 continua rodando o timer para adicionar control2

__________________________________
- Everyone has a chance


#482042 - 01/06/2018 15:16:31

MARCOSLING
SAO PAULO
Cadast. em:Agosto/2008


Citação:
:
:
Amigo, a coisa não é assim "tirando dúvidas conforme aparecem", sugiro que estude muito bem OOP e como todas essas coisas funcionam. Se você está baseando seu aprendizado em pedacinhos de código aqui e ali, você está indo pelo caminho errado
Então, kerp, creio que seja da forma errada, mas eu aprendi assim, aparecendo os problemas de descobrindo o porque.. Até alguns messes atrás, fazia conexão junto do framework e jogava em uma grid, e rodava a grid para manipular os dados

O problema é  que o sistema vai crescendo junto com os problemas e isso vai virando uma bola de neve. E um dia vc terá que jogar tudo fora e começar do jeito certo.



#482063 - 02/06/2018 08:12:38

NOWLIGHTS
SUMARE
Cadast. em:Abril/2011


Sim exatamente, e toda vez que começar do 0 vai sempre colocar no sistema tudo que sabe.. eu gosto desse método de ensino

__________________________________
- Everyone has a chance


 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por NOWLIGHTS em 20/06/2018 10:17:42