ActionScript / Flex: Por que as aplicam {falha, resultado} métodos de AsyncToken interna?

StackOverflow https://stackoverflow.com/questions/1601997

Pergunta

Como o título sugere, por isso são os métodos applyResult e applyFault de AsyncToken marcada mx_internal?

Houve algumas vezes que eu teria gostado de uso AsyncToken no meu código, mas eu acabei re escrevendo-lo porque eu não quero forçar os clientes a use namespace mx_internal.

Foi útil?

Solução

Bem, como um lugar indicado no livedocs (eu acho) mx_internal é usado para marcar as coisas no quadro que pode mudar ao longo do tempo (aparentemente eles pensaram C # e Java está fazendo isso errado com o material obsoleto). Quanto à razão exata pela qual esses métodos particulares são marcadas mx_internal somente o desenvolvedor que marcou os conhece. Eles provavelmente conheceu um dia para discutir o assunto e que era algo assim: "Oi. O acesso queremos para esses métodos" "Eu não sei, nós queremos que eles sejam substituível"? "Não tenho certeza" "Ok, vamos fazê-los mx_internal então". Houve muitos casos em que os métodos que deveria ter sido marcado protegidas foram marcados mx_internal (ou privada, que é ainda pior, em alguns casos) em vez, e é uma das coisas mais irritantes no quadro flex.

Além disso, você está usando o namespace mx_internal se você quer ou não, porque a maioria dos componentes na importação quadro que, por isso, se você usar os componentes do framework Flex, a sua construção já inclui-lo.

Outras dicas

Se você tinha construído essa classe que você gostaria de esconder a funcionalidade longe de usuários normais, como você não quer que eles erroneamente invocando os métodos, mas as classes internas que os criam precisa invocado eles, portanto, marcando-os como mx_internal faz muito sentido.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top