Addons.

Extensão dinamicamente outros objetos com addons (anteriormente objetos)
Baixe Agora

Addons. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • ZPL
  • Preço:
  • FREE
  • Nome do editor:
  • Phillip J. Eby

Addons. Tag


Addons. Descrição

Dinamicamente estender outros objetos com addons (anteriormente objetos) Em qualquer aplicação ou estrutura suficientemente dimensionada, é comum acabar com muitas preocupações diferentes na mesma classe. Por exemplo, você pode ter código de persistência, lógica de negócios e ui todos encravados em uma única classe. Atributo e nomes de métodos para todos os tipos de operações diferentes são empurrados em um único namespace - mesmo ao usar as classes mixinas. Preocupações de separação em objetos diferentes, no entanto, facilita a gravação de componentes reutrocináveis e separados. O pacote Addons (Peak.util.addons) permite gerenciar preocupações usando as classes Addon Classes.Addon são como misturas dinâmicas, mas com seus próprios namespaces de atributo e método privados. Uma preocupação implementada usando add-ons pode ser adicionada ao tempo de execução a qualquer objeto que tenha um atributo __dict__ gravável ou seja fraco-referenciável.Addon classes também são como adaptadores, mas em vez de criar uma nova instância toda vez que você pedir um Uma instância existente é retornada, se possível. Desta forma, os add-ons podem acompanhar o estado em andamento. Por exemplo, um complemento de persistência pode acompanhar se o assunto foi salvo no disco ainda: >>> de pico.util.addons Import Addon >>> Persistência de Classe (Addon): ... Saved = True .. . Def mudou (auto): ... self.saved = false ... defveded (auto): ... se não auto.Saved: ... Imprimir "salvando" ... self.saved = verdadeiro >> > CLASSE: PASS >>> ATHING = coisa () >>> Persistência (ATURA) .Savedtrue >>> Persistência (Athing) .Changed () >>> Persistência (ATHING) .Savedfalse >>> persistência (ao longo). save_if_needed () salvando >>> Persistência (ATHING) .Save_if_Needed () # Nenhuma ação Takenthis torna mais fácil para nós, por exemplo, escrever um loop que salva um monte de objetos, porque não precisamos nos preocupar com a inicialização o estado do complemento de persistência. Uma classe não precisa herdar de uma base especial para poder ter este estado rastreado, e não precisa saber como inicializá-lo, qualquer um do curso, no caso de persistência, uma classe faz Precisa saber quando ligar para os métodos de persistência, para indicar mudanças e solicitar salvamento. No entanto, uma biblioteca que fornece tal add-on também pode fornecer decoradores e outras ferramentas para tornar isso mais fácil, enquanto ainda permanecem em grande parte independentes dos objetos envolvidos.indeed, a biblioteca Addons foi realmente criada para facilitar a implementação de funções ou decoradores de método. Por exemplo, pode-se criar um decorador @synchronized que bloqueia com segurança um objeto - consulte o exemplo abaixo em Desenhar preocupações.in Resumo, a biblioteca Addons fornece uma forma básica de AOP, que permite anexar (ou "introduzir" Na terminologia do AspectJ) Atributos e métodos adicionais para um objeto, usando um namespace privado. (Se você também deseja fazer o "conselho" estilo aspectj, o pacote de regras de pico pode ser usado para fazer "antes", "depois", e "around" conselhos em combinação com os add-ons.) Requisitos: · Pitão


Addons. Software Relacionado

ligeos.

uma biblioteca para referência linear em linhas de linhas, incluindo cálculos geográficos ...

147

Download