Sim concordo plenamente com isso... com ponteiro é melhor ainda....

 agora quanto aos comentários:
>>> 1. processamento ligeiramente mais lento;
  este "ligeiramente" em um Celeron 1.0Ghz, com 200 campos, vc nem vai 
conseguir calcular a diferença, são alguns CICLOS de processamento à mais....
vc viu em um P4 1.7Ghz, 1.000.000 de vezes deu 1 segundo de diferença.... entre 
fieldbyname e fields[]
talvez em um 386 de 40Mhz com 64MB de memória, windows 3.11, hd de 1GB, 
5400rpm, ai sim faça a diferença.... 

>>> 2. O pior dos efeitos colaterais -- seu uso está sujeito a erros de 
>>> digitação difíceis de pegar em projetos grandes.
   è este já vai dar um pouco de trabalho, mas mesmo assim, menos que com 
fields[xx] quando vc troca os campos de lugar ou acrescente um calculado no 
meio da coisa......... hehehehhe.... 

Luiz Escobar





------------- Segue mensagem original! -------------

De: Joao Morais <[EMAIL PROTECTED]>
Marcelo wrote:

> AMigos da lista, gostaria de saber da experiencia de vcs
> 
> Vi em uma lista de discussão que o FieldByName deixa o tráfeco mais 
> lento. Isso é verdade?

Acrescentando (ou resumindo) os comentários dos colegas da lista:

Use FieldByName apenas se você precisar criar uma camada abstrata aos 
dados, aonde você tem o nome do campo em uma variável string e nem faz 
idéia da posição dele na lista. Nos demais casos você deve usar um 
ponteiro diretamente ao campo, e este ponteiro você cria facilmente em 
tempo de projeto, clicando duas vezes sobre o dataset, Ctrl+A e confirma.

Usar FieldByName indiscriminadamente tem dois problemas:

1. processamento ligeiramente mais lento;
2. O pior dos efeitos colaterais -- seu uso está sujeito a erros de 
digitação difíceis de pegar em projetos grandes.

Quanto ao tráfego (rede), usar ou não usar FieldByName é irrelevante.

--
João Morais


Responder a