me diga uma coisa,
Digo, rs
esse metodo serve para qualquer situação em que se queira compartilhar valores de variaveis ?
Sim. Vale para todas as situações em que há compartilhamento de valores. A passagem de parâmetros torna a variável local trabalhável. Mantém a tipagem dela com fácil leitura, faz a variável aparecer na janela de visualização de variáveis locais em tempo de execução.
fora o uso de Type que serviria para compartilhar valores, mas que complica a utilização, não vejo como excluir completamente o uso de variaveis publicas
O Type não serve para compartilhar valores. O Type serve para definir uma variável com vários valores e assim ela pode ser usada tanto como global quanto como passagem de parâmetos. Daí ao invés de passar várias variáveis, vc pode passar só uma, que tem diversos valores. É como se uma variável fosse um cartão, e um type coleciona algumas variáveis, alguns cartões, como numa carteira. Vc pode definir o Type Usuario, com as subvariáveis: Nome, Username, Senha, Telefone. Daí vc passa a variável usuario_qualquer declarada como tipo Usuario, e fica mais fácil levar a variavel pra la e pra cá.
Creio que depende muito do que ele está querendo fazer e uma utilização em cascata ? onde uma macro tem que definir as variaveis
se executa uma que pega os valores desas variaveis e executa um procedimento
e dependendo da situação chama outra macro que vai usar as mesma variaveis para executar outra ação.
Ok, acho que com "uma macro", vc quer dizer rotina. Podemos ter rotinas que determinam os valores das variávels, e podemos passar qtos parâmetros quisermos, do tipo que quisermos, objetos, variáveis, tipos, enums, etc. Nada é perdido. Sim, usar uma rotina para determinar os valores das variáveis é boa ideia. Mas nem por isso as variáveis tem que ser globais.
A melhor pratica não é deixar funcionando da melhor maneira possível, sem erros, rápido e eficientemente ?
Não. "Melhores Práticas" vão além. A melhor maneira possível sem erros rápido e eficiente é o mínimo que se espera de um sistema. As melhores práticas da programação também levam em consideração o próprio desenvolvimento, as atualizações, a facilidade de leitura e entendimento do código, a manutenção, os próximos desenvolvedores que poderão entrar em contato com o código dps da ausência do autor, até o idimoa, se vc desenvolve para distribuir ou para uso próprio e minha cereja, a beleza do código. Claro que o mundo todo tenta padronizar formas de desenvolvimento. Algumas pessoas se adaptam, outras nem tanto, outras nem um pouco. Mas os padrões internacionais de melhores práticas não deixam de existir nem perdem sua importância.
está bem, eu sou um rebelde que não segue regras eu não declaro todas as variavei eu uso goto e gosub para fazer loop raramente coloco comentários nas macros
Sim vc é rebelde e já tivemos essa discussão antes. Vc não vai mudar por isso desisti.
minha opinião certamente é a ultima que deveria ser levada em conta, já que sequer trabalho na area mas acho que nenhum metodo pode ser descartado pode funcionar para uns e para outros não e tudo depende do que se quer fazer e das ferramentas que se sabe usar as variavis que uso em minha planilha
Eu não diria que é a última, mas eu diria que vc tb poderia aprender com as dicas de quem trabalha na área. Quanto ao descarte de métodos, em nenhum momento eu disse pra nunca usar globais, eu disse pra evitar ao máximo, a não ser que seja fundamentalmente necessário. Todos os métodos existem e podem ser usados a vontade *(vc é um bom exemplo disso).
Tenho que fazer uma limpa pq tem umas 3 ou 4 que são usadas apenas por macros antigas e não sei se ainda estão na ativa, mas tbm com 224 procedimentos, 3.305 linhas qualquer um se perderia
Tá aí uma desvantagem do uso de globais. Quando as rotinas não referenciam mais, vc vai ter que caçar e lembrar quais não são mais usadas para apagá-las, ou ainda, vai ter que deixá-las ocupando memória desnecessária. Aliás, falando em memória, todas as variáveis criadas utilizam memória, que fica reservada pra o uso quando este acontecer. Se forem globais, o espaço fica reservado durante todo o tempo de execução, se forem locais, só existe a reserva do espaço em memória durante a execução daquela rotina.
Enfim, eu sei que vc discorda de mim Ed... Não vou me desculpar por tb discordar de você. Eu trabalho nesta área há 11 anos, aprendi muita coisa, me adaptei bastante, fiz sistemas para russos, indianos, brasileiros e americanos. Não faço tudo perfeito, mas continuo tentando. Gosto de ver meu código como uma obra de arte. Sempre pensando no outro, em quem vai pegar esse código dps que eu entregar ou eu morrer.
Entonces... Acho que respondi todas suas dúvidas e colocações.
Eu deixaria essa discussão pra aquele nosso tópico que começamos há um tempo, pq aqui o mais importante é a dúvida do robo8268...
Robo8268, vc conseguiu entender as partes referentes a sua dúvida ?
FF
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 09/04/2015 10:57 am