Por que exatamente você usaria classes genéricas

Henrique Matos
Flutter — Comunidade BR
2 min readJan 15, 2020

Esse artigo é pequeno e a única finalidade é entender “por dentro” de classes genéricas, se quiser construir uma? Bom … por que construiria uma? Vamos entender.

É muito comum que tenhamos que usar no nosso dia-a-dia classes como List, para resolver algum tipo de problema específico, armazenar lista de determinados dados é algo que estamos cansados de ver.

Vamos dizer que temos uma aplicação que inclui carrinho de compras, então podemos ter algo como:

E então nesse momento nos perguntamos, como eu crio uma classe que recebe parâmetros entre “<…>” ? E por que eu criaria isso ?

Bem, os motivos podem ser vários, então digamos que você está em um projeto de games (provavelmente você não usará Dart para isso, mas é só exemplo) e precise desenvolver um bau especial, para guardar itens do jogo. Esses itens podem ser arma, roupa, cartas etc.

Poderíamos então definir classes dos objetos e a interface do baú para cuidar de cada item, teríamos algo desse tipo:

Ruim … não é mesmo? Note que o trabalho seria infinito, pois temos muitas possibilidades e toda vez que nosso jogo tiver um item novo também teremos que adicionar um nova interface para setar e implementar o tratamento adequado.

Enfim … chegamos no momento mágico, e usaremos as classes genéricas. Veja como simplificamos esse carinha e usamos o poder do paradigma orientado a objeto.

E …. tanan !!! Aqui está a grande mágica das classes genéricas.

Acho que é bem difícil a galera precisar usar isso direto, mas é sempre bom saber sobre os recursos que a tecnologia nos dá para facilitar nossa vida. Muitas vezes estamos andando em círculos, reinventando a roda, e a solução está bem diante de nós nas documentações … kkkk

Meu foco foi ajudar a entender por que e em qual momento poderia usar esse recurso, espero ter agregado de alguma forma.

--

--