CLASSES COMPROMETEM O DESEMPENHO ???
Depois de muitos problemas que tive, hoje eu só trabalho com RecordSets Desconectados, e acesso os dados de apenas 1 unico registro de cada vez, através de Classes,
Os beneficios são muitos, principalmente por centralizar o desenvolvimento de uma tarefa em um unico lugar, e não precisar desenvolver varias rotinas para o mesmo fim.
Só que ontem (13/06/05 ) em uma palestra sobre Migração de VB6 para .Net, falaram que o excesso de classes comprometem o desenpenho do sistema.
Eu sempre achei que fosse ao contrario, que ajudava, alguem sabe me dizer com exatidão se compromete ou se Ajuda no Desempenho ???
Os beneficios são muitos, principalmente por centralizar o desenvolvimento de uma tarefa em um unico lugar, e não precisar desenvolver varias rotinas para o mesmo fim.
Só que ontem (13/06/05 ) em uma palestra sobre Migração de VB6 para .Net, falaram que o excesso de classes comprometem o desenpenho do sistema.
Eu sempre achei que fosse ao contrario, que ajudava, alguem sabe me dizer com exatidão se compromete ou se Ajuda no Desempenho ???
Bom em pensar deste jeito eu diria que trabalhar com ADO compromete o desempenho já que o mesmo trabalha com tudo em memoria ao invéz do ADO que trabalha apenas com ponteiros na memoria.
Isto é muito relativo, basta tu pensar no seguinte, no lugar destas classes tu usaria o que?
Por exemplo se tu usa classe para guardar uma coleção de clientes você poderia usar array. Mas ambos gastam a mesma coisa de memória praticamente. Não vejo fundamento.
Isto é muito relativo, basta tu pensar no seguinte, no lugar destas classes tu usaria o que?
Por exemplo se tu usa classe para guardar uma coleção de clientes você poderia usar array. Mas ambos gastam a mesma coisa de memória praticamente. Não vejo fundamento.
Realmente Classes em EXCESSO comprometem mesmo.......
No seu caso por utilizar RecordSets nas classes isso pode te dar uma perda(uma boaaaa perda) de desempenho. Mas tem de levar em conta que assim você trabalha melhor com o código, sendo assim tente "agilizar" o código ja existente das classes.
Levando em conta que isso é só uma das soluções.
No seu caso por utilizar RecordSets nas classes isso pode te dar uma perda(uma boaaaa perda) de desempenho. Mas tem de levar em conta que assim você trabalha melhor com o código, sendo assim tente "agilizar" o código ja existente das classes.
Levando em conta que isso é só uma das soluções.
CLASSES em excesso não comprometem, o que compromete é o conteúdo da mesma.
Se tu colocar a lógica num módulo vai dar na mesma
Se tu colocar a lógica num módulo vai dar na mesma
Eu normalmente abro o recorset no sistema populo o que tenho que popular, e o fecho, assim que é disparado qualquer evento eu acesso a classe para me trazer informações apenas deste registro, e na classe eu tembém não deixo o RecordSet aberto,
em ambas eu utilizo o ADO.
Outra duvida tem como saber quantidade memória que é utilizada pela classe ??? apesar de ser usado por apenas milésimos de segundos seria interessante saber para poder fazer uma comparação com matrizes.
toda estas duvidas foram geradas, pois tenho um sistema com mais ou menos 250 Forms e 80 Classes, o banco de dados deste Sistema ultrapassa os 40 GB a tabela de produtos tem mais de 200 mil itens, tem horas que o Sistema está começando a ficar lento, devido a todos os cuidados que tenho em não gastar memória atoa, não deixar nada aberto desnecessariamente, eu acho que o problema agora é hardware, e agora chega um cara dizendo que classes atrapalham ??? é nessas horas que da um nó na cabeça.
em ambas eu utilizo o ADO.
Outra duvida tem como saber quantidade memória que é utilizada pela classe ??? apesar de ser usado por apenas milésimos de segundos seria interessante saber para poder fazer uma comparação com matrizes.
toda estas duvidas foram geradas, pois tenho um sistema com mais ou menos 250 Forms e 80 Classes, o banco de dados deste Sistema ultrapassa os 40 GB a tabela de produtos tem mais de 200 mil itens, tem horas que o Sistema está começando a ficar lento, devido a todos os cuidados que tenho em não gastar memória atoa, não deixar nada aberto desnecessariamente, eu acho que o problema agora é hardware, e agora chega um cara dizendo que classes atrapalham ??? é nessas horas que da um nó na cabeça.
Alexandre Marchi
Vou te vender o peixe que me passaram, aliás, quem me passou entende muito, Luis Oliveira, o Professor, em VB 6 Classes realmente chegam a retardar e não tem tanta fucionalidade quanto na Plataforma .NET.
Ou eu entendi 100% errado ou é isto mesmo.
[s50]
Memória Lenta: veja se não está criando Objetos e Instanciando ao mesmo Tempo, exemplo:
Isto faz com que o Computador aloque memória e mesmo sendo o Objeto Fechado e DestruÃdo a memória pode não ser limpa, o ideal
Vamos ver as outras opiniões a respeito
[s50]
Vou te vender o peixe que me passaram, aliás, quem me passou entende muito, Luis Oliveira, o Professor, em VB 6 Classes realmente chegam a retardar e não tem tanta fucionalidade quanto na Plataforma .NET.
Ou eu entendi 100% errado ou é isto mesmo.
[s50]
Memória Lenta: veja se não está criando Objetos e Instanciando ao mesmo Tempo, exemplo:
Dim rsTemp as NEW ADODB.RecordSet
Isto faz com que o Computador aloque memória e mesmo sendo o Objeto Fechado e DestruÃdo a memória pode não ser limpa, o ideal
Dim rsTemp as ADODB.RecordSet
Set rsTemp = NEW ADODB.RecordSet
Vamos ver as outras opiniões a respeito
[s50]
Não discordo PAGANINI, mas tudo em execesso compromete... a não ser dinheiro
Tópico encerrado , respostas não são mais permitidas