Generics no Delphi 2010 – Parte 1
Entendendo o generics.
Olá pessoal, hoje começarei uma série quicktips onde falaremos sobre os Generics do Delphi.
Generics são um recurso da linguagem que permitem o desacoplamento de uma classe ou de um método para um ou mais tipos.
O uso de Generics permite que se escreva classes e métodos sem que se defina o tipo que os mesmos trabalharão em seu corpo. Os tipos são definidos no momento do uso dos mesmos.
Um exemplo clássico que temos é o List. O objeto List é responsável por manter uma lista de algum tipo de dado. Não faz diferença para o List se ele está armazendo uma lista de String, inteiro ou de um objeto, por este motivo ele permite que o tipo seja definido no momento da declaração da variável, conforme vemos no exemplo abaixo.
Obs: Para usarmos o TList genérico precisamos dar uses na unit Generics.Collections
Como podemos observar, declaramos um List do tipo String e quando usamos o método Add, o mesmo nos pede um value do tipo String, isso é possível pois a classe Lista usa generics, com isso a declaração da classe Lista foi definido um tipo genérico e este tipo foi referenciado no parâmetro do método Add.
Observem na figura acima a declaração da classe TList. Vejam que no momento da declaração, é definido um tipo genérico T, agora observem o parâmetro do método Add, notem que este parâmetro é do tipo T. Com isso, o tipo deste parâmetro irá varia de acordo com o que nós colocarmos na declaração de nossa variável.
Vamos alterar a mesma declaração anterior de String para Integer e perceba que o parâmetro do método Add muda, ele passa a esperar um value do tipo Integer.
É isso aí pessoal até a próxima quick tip.
Um abraço a todos.
rcoelhorj@gmail.com
Ricardo Coelho.