DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da ClubeDelphi
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Video: Curso Online-Dominando a Orientação a Objetos e Componentes em Delphi (Avançado)-Parte IV-Criando exemplos práticos de como se trabalhar com interfaces e classes abstratas

Nesta vídeo-aula criaremos as interfaces IField e ITable e também as classes responsáveis pela implementação das mesmas.

Título: Curso Online-Dominando a Orientação a Objetos e Componentes em Delphi (Avançado)-Parte IV-Criando exemplos práticos de como se trabalhar com interfaces e classes abstratas


Tempo: 30:00 min

 

Mini Resumo: Dando continuidade ao nosso curso de Programação Orientada a Objetos, na aula de hoje veremos exemplos práticos de como se trabalhar com interfaces e classes abstratas por darmos início à criação da nossa camada de persistência. Veremos também como se trabalhar com métodos de classes para garantir que nossa biblioteca de funções auxiliares não esteja espalhada dentro do nosso código fonte como um conjunto de funções e variáveis globais. Nesta vídeo-aula criaremos as interfaces IField e ITable e também as classes responsáveis pela implementação das mesmas. Considero essa aula como sendo uma excelente abordagem de como poderemos utilizar na prática a OOP para criarmos sistemas mais padronizados e confiáveis. Se você esta habituado a trabalhar de forma procedural em seus aplicativos, eis uma oportunidade de aprender a organizar o seu código fonte e melhorar o seu Know How.

 

Tecnologias utilizadas: Borland Delphi.


Palavras chaves: Borland Delphi, Orientação a Objetos, Pascal.

Listar todos os posts de Dominando a Orientação a Objetos e Componentes em Delphi (Avançado)

Devmedia [renato Matos]
12 anos de experiência em desenvolvimento de software.
O que você achou deste post?

    2 COMENTÁRIOS

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Marlon Tiedt
Olá Renato, estou acompanhando a série, o uso da interface em vez de classes é somente pelo gerenciamento automático de memória, ou tem outros motivos?

[]s,

Marlon
[há +1 ano] - Responder

 

[autor] Renato Matos

Irei listar alguns dos motivos pelos quais se deve usar Interfaces:

a) Interoperabilidade com aplicações principalmente no que se refere ao uso de COM. Usamos interfaces e não classes abstratas
b) Passagem de parâmetros usando interfaces ao invés de classes abstratas conseguimos uma maior abstração além do gerenciamento da memória. Por exemplo: Você cria um método para gravar um Produto. Você poderia usar:
procedure salvaProduto(codigo, nome, grupo: string);
neste caso se você criar um novo campo terá que mudar a chamada para que seu projeto compile
procedure salvaProduto(obj: TProduto);
neste caso iremos passar uma instância por parâmetro e depois temos que nos preocupar em liberá-la pois não temos o garbage
procedure salvaProduto(obj: IProduto);
neste caso iremos passar uma instância por parâmetro que automaticamente será liberada após sua saída de escopo
c) Herança múltipla usando Interfaces. Não conseguimos fazer herança múltipla usando Classes quer sejam elas abstratas ou não. Exemplo:
 
IPessoaFisica = interface
  function CPF: string;
end;
 
IPessoaJuridica = interface
  function CNPJ: string;
end;
 
TCliente = class(TInterfacedObject, IPessoaFisica, IPessoaJuridica)
...
end;
 
var
  obj: TCliente;
 
begin
  obj := TCliente.Create;
  ...
  posso fazer: obj.CPF ou obj.CNPJ
end;
 
Espero ter ajudado!
Maiores dúvidas
 
 
[há +1 ano] - Responder
 
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03