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

Artigo Clube Delphi 110 - POO – Crie sistemas flexíveis, expansíveis e com baixo custo de manutenção

Artigo da Revista Clube Delphi Edição 110.






POO – Crie sistemas flexíveis, expansíveis e com baixo custo de manutenção

Programando para interfaces, usando polimorfismo e padrões de projetos

 

Do que trata o artigo

Fundamentos de OO: abstração, encapsulamento, polimorfismo e herança. Mostra como criar e utilizar interfaces, separar responsabilidades e aplicar padrões de projeto (Design Patterns).

Para que serve

Aumentar o conhecimento sobre POO para desenvolver sistemas mais flexíveis com baixo custo de manutenção, tornando a arquitetura de sistemas mais expansível.

Em que situação o tema é útil

As boas práticas apresentadas neste artigo são úteis ao desenvolver aplicações Delphi de qualquer tipo, sejam aplicações comerciais, desktop, web, pois a OO pode ser empregada com sabedoria em qualquer situação, tornando a arquitetura mais robusta.

 

Resumo do DevMan

            Este artigo mostra para você o caminho a ser seguido para criar sistemas flexíveis que tenham baixo custo de manutenção. Aqui não será discutido, o que é uma abstração ou uma interface, mais sim como, quando, porque e qual a melhor maneira de usar este e outros recursos.

 

Programar orientado a objeto não é difícil. É tão fácil que até os programadores mais inexperientes programam utilizando a orientação a objetos, antes mesmo de saber que existe esta forma de programar. Isto pode ser notado, por exemplo, ao criar um novo formulário. Quando você pede um novo formulário (File + New + Form), o que acontece de verdade é que o IDE cria automaticamente para você, uma classe que herda as características necessárias para um formulário. É esta facilidade que gera alguns problemas.

Devido à grande facilidade, que permite ao programador codificar sem a necessidade de seguir um padrão específico, os fundamentos da orientação a objetos muitas vezes são ignorados e quando são utilizados, acabam por ser utilizados de maneiras pouco eficientes, levando o programador a pensar que: ou ele não sabe programar orientado a objeto, ou programar orientados a objeto é muito difícil e não vale a pena o tempo gasto em relação aos benefícios que traz. Não importa o que você pensa, o fato é que querendo ou não, sabendo ou não, em Object Pascal você sempre está programando OO. O “segredo” é saber usar os fundamentos da OO da melhor maneira possível para o seu caso.

O foco deste artigo não é apresentar os fundamentos da OO, mas sim abordar a melhor maneira de usá-los, aplicando alguns dos principais princípios da programação OO para que o resultado seja um programa flexível, como a nossa realidade exige.

O Jogo

Para entender quais as vantagens e desvantagens da OO, imagine que você criou um jogo que simula o desempenho de diferentes tipos bolas em ambientes diferentes. Todas as bolas do jogo podem rolar ou quicar. Neste jogo, você usou a herança para reduzir ao máximo a duplicação de código. Você criou uma superclasse TBola herdada por todos os outros tipos de bolas (Figura 1).

 

Figura 1. Primeiro design para o simulador (framework)

Na Figura 1 podemos observar que:

·         Além de TBolaDeCouro e TBolaDePlastico podem existir outros tipos de bolas que herdam de TBola;

"



ATENÇÃO! A exibição deste artigo foi interrompida.

Clique aqui e acesse o Leitor Digital DevMedia para ler este artigo completo.




    2 COMENTÁRIOS

[Fechar]

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



Ricardo Roberto Dos Santos
E ae cara beleza ???

Então, estou aprimorando meus conhecimentos em POO e achei seu artigo muito interessante, fiz todos os passos, e acompanhei seu artigo detalhadamente ...

Mas pra minha surpresa, no final de tudo, qdo fui copilar e executar, aparece a mensagem de q está faltando o arquivo "Bola.dcu".

Apaguei tudo, e refiz suspeitando de um possível erro de minha parte, mas p/ minha surpresa, a mensagem persiste...

Também já tentei deixar somente o DPR, DFM e todos os PAS, e executei o BUILD ALL, mas tb não funcionou, gostaria de saber se vc poderia me dar uma "luz" ...

Desde já agradeço a atenção.
[há +1 ano] - Responder

 

Stavarengo, Rafael
Ricadro, voce ainda esta com este problema?
 
se estiver, mande-me o seu projeto com erro no meu email para eu dar uma olhada.
 
[há +1 ano] - Responder
 



Publicidade
Autor
Rafael Stavarengo

Programador de sistemas a 8 anos, integrante da equipe editorial da revista Clube Delphi. Domínio em Java, PHP e UML. Sólido conhecimento em Design Patterns e metodologia ágeis. Graduado em Análise e Desenvolvimento de Sistemas pela UNIPAR.


Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
1   0
[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
2012 - Todos os Direitos Reservados a web-03