Tag Archives: reuso

Polymer – Excitante!

WebApp Saga

O que nós ganhamos!

Conheça “o que ganhamos” com esta tecnologia que promete “ceifar” a vida dos APPs.

Produtividade

Pense nas vantagens citadas abaixo.

Programação Declarativa

Implementa DSL (Linguagem Específica de Dominio) usando Markup poderoso, intuitivo, significativo e expressivo.

Manutenibilidade

Na leitura do código entendemos imediatamente reduzindo o custo de manutenção. O encapsulamento permite criar componentes com função específica restringindo escopo e facilitando a manutenção.

Pequenos Componentes

Construa blocos de construção usando composição.

Reuso na Web

O encapsulamento valoriza a reusabilidade e o suporte de ferramentas como o Bower permite o uso por qualquer dev.

Extensibilidade

Implementa a forma padrão para estender elementos nativos e personalizados.

Testabilidade

A testabilidade dos componentes é provida pelo WCT (Web Component Tester).

Separação de Escopo

Permite escopo diferenciado para CSS, DOM e APIs.

Interoperabilidade

Possui integração em baixo nível no DOM, então a interoperabilidade é completa.

Não requer usar outras libs JS como jQuery, pois podemos usar diretamente querySelector, querySelectorAll, getElementById, etc já que o IE 9 e todos os outros principais browsers já suportam.

Acessibilidade

Implementada por padrão.

Mixins

É uma feature do JS que permitem adicionar comportamento de objs em outros.

O Polymer possui um método utilitário para oferecer suporte para esta feature no Framework.

Layout Containers

Vários elementos para suporte a Layout elimina necessidade do uso do Bootstrap ou similares.

Os Layout Attributes atuam em elementos nativos tal como ou temos um conjunto completo de funcionalidades para gerenciamento dinâmico de Layout.

Suporte a Temas

Utilize para implementar Temas para a webapp.

Suporte a Transições

As Tags podem definir transições entre conteúdo de forma declarativa.

Ferramenta de Design

Ferramenta visual disponível funcionando como playground para desenvolvimento de diálogos e páginas da aplicação usando drag-and-drop.

 

Next stop Polymer. Disambark on the left.

Generics – Teorias (Reuso)

Ex 1 : Reuse facilmente o código

Entendendo um pouco sobre Generics. Característica importante comparada aos tipos convencionais não Generics.

Um conceito importante para entender esse recurso é a questão de reuso de código. Vamos lá:

Já vimos que, ao implementar tipos byVal com classes collection no generics, temos as operações boxing/unboxing que aumentam a sobrecarga quando tipo byVal for convertido para byRef e vice-versa.

Utilizando classes genéricas, é possível defini-la apenas uma vez e instanciá-la de várias formas. Podemos inclusive, defini-la em uma linguagem .NET e utilizá-la em outra linguagem.

Chega de Teoria!

Instanciando objetos genericos

ClasseGenerica<int> objGen = new ClasseGenerica<int>();
objGen.Adicionar(4);

ClasseGenerica<string> objGen2 = new ClasseGenerica<string>();
objGen2.Adicionar("Developer");

ClasseGenerica<Pessoa> objGenP = new ClasseGenerica<Aluno>();
objGenP.Adicionar(new Pessoa { id = 4, nome = "Aldo" });

Instancio a classe ClasseGenerica<T> com tipo int e string.

Instancio utilizando um tipo definido pelo usuário como uma classe Pessoa.

Pronto! Agora tente realizar isso utilizando uma classe não genérica.