Voce posto uns segundos antes de eu postar por isso eu escrevi gabriela hehe... Vou dar uma estudada nisso pra melhorar o sistema.
valeu a dica ae. 2010/4/15 toeonardo Casali <[email protected]> > Eu não sou a Gabriela, mas vamos lá... > > Quanto a utilizar funções para chamadas de serviço, você pode utilizar > a abordagem de Proxy. Você cria um Proxy para cada serviço de > requisição de dados que você tem e essa classe tem como > responsabilidade fazer isso. Esse "Proxy" nada mais é que uma classe > que herda de EventDispatcher. > > /** > * Classe Proxy responsável pela comunicação com a entidade XXX. > * Tem como responsabilidade centralizar o acesso de dados na camada > Java, criando > * assim um melhor reaproveitamento de código. > * @author Leonardo Casali > */ > public class MyProxy extends Proxy { > > private var remoteObject : RemoteObject = new > RemoteObject(DESTINATION); > > public function getAllXXX(userName : String) : void { > // Aqui voce faz a chamada para o RemoteObject e adiciona os > listeners. > } > > private function getAllXXXResultHandler(event : ResultEvent) : void > { > // Dispara um evento personalizado, e encapsula o resultado > no > evento. > // Essa parte você pega na aplicação que chamou. > } > > private function getAllXXXFaultHandler(event : FaultEvent) : void { > // Dispara um evento personalizado, e encapsula o resultado > no > evento. > // Essa parte você pega na aplicação que chamou. > } > > Usando isso, basta instanciar o Proxy, colocar os eventlisteners para > os eventos de sucesso e erro, e disparar o método. Isso garante que se > você refatorar o Java, por exemplo, mexa em apenas um local. > > Quanto as variáveis apenas no Application, você está trabalhando com > variáveis globais, e isso, a não ser que seja uma aplicação de meio > expediente, descartável, é ruim (vai se tornando uma bola de neve). As > variáveis devem sempre ter o menor escopo possível. O argumento por > trás disso é que toda vez que você aumenta o alcance, você tem mais > código que potencialmente modifica a variável, e a complexidade, > portanto, é mais induzida na solução. Os motivos que você utilizaria > uma variável global e a minha explicação abaixo... > > * Se a variável nunca vai mudar, então é uma constante, não uma > variável. > * Se a variável exige o acesso universal, em seguida, duas sub- > rotinas devem existir para obter e definir isso, e elas devem ser > sincronizadas. > * Hoje seu sistema é pequeno. Mas ele pode (e provavelmente vai) > crescer com o tempo. Sempre pense se você realmente deve utilizar a > variável no ambito global ou não. Vai ver que 99% das vezes a variável > não é necessária para toda a aplicação. > > Recomendo que você dê uma olhada no padrão MVC, que ajudaria bastante > na situação que tu descreve... > > Mas são minhas opiniões... > > Abraços, > Casali > > > > > On 15 abr, 08:46, Helio Antonio Francisco Silva > <[email protected]> wrote: > > Massa Gabriela, ja que voce tocou nesse assunto ou vou falar > > como eu faço as minhas aplicações, ai voce ja me fala se to fazendo > certo > > ou errado. > > > > Eu evito o maximo possivel usar listeners, entao eu faço o seguinte, > quando > > executo alguma ação como chamada de webservice ou chamar o banco eu chamo > os > > metodos todos da raiz principal. ou seja dos modulos eu acesso > > > > parentApplication.nomedafuncao > > > > o resultado eu deixo e uma variavel publica que tambem posso acessar em > > > > parentApplication.nomedavariavel > > > > Peguei isso de quando programava em flash com as famosas _global e > _level, > > assim eu consigo acessar sem problema nenhuma qualquer variavel de todos > os > > locais. > > > > E uma ma pratica ? sempre estou disposto a melhorar; > > 2010/4/15 Gabriela Trindade Perry <[email protected]> > > > > > > > > > Pra saber se consome mais eu teria que saber qual a alternativa. > > > Usar Singletons sempre tem o preço de nunca sair da memória, já que tu > > > não pode matar um Singleton. > > > Dá pra fazer um monostate, mais ou menos como o miso falou (um > > > monostate é uma classe com variáveis estáticas) > > > > > A moral é a seguinte: > > > 1. sempre que possivel passar true para o parametro weakreference do > > > addeventlistener > > > 2. remover o listener quando nao for mais necessario > > > > > Outra coisa que eu acho é que as vezes conforto vale mais que > > > desempenho. Por isso eu as vezes uso Singletons, porque eles são muito > > > confortaveis :0) > > > > > -- > > > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > > > Para enviar uma mensagem, envie um e-mail para > [email protected] > > > Para sair da lista, envie um email em branco para > > > [email protected] > > > Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev > > > > > To unsubscribe, reply using "remove me" as the subject. > > > > -- > > Desenvolvedor Web > > -- > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > Para enviar uma mensagem, envie um e-mail para [email protected] > Para sair da lista, envie um email em branco para > [email protected] > Mais opções estão disponíveis em http://groups.google.com/group/flexdev > -- Desenvolvedor Web -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para [email protected] Para sair da lista, envie um email em branco para [email protected] Mais opções estão disponíveis em http://groups.google.com/group/flexdev
