Atenção: esse artigo tem um vídeo complementar. Clique e assista!
Este artigo apresenta o desenvolvimento de uma aplicação tradicional em .NET, usando uma abordagem baseada em eventos, a seguir mostra como usar importantes princípios da programação orientada a objetos (POO) para tornar a aplicação preparada para mudanças.
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 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.
C# e POO
Neste artigo veremos alguns dos conceitos da Orientação a Objetos de forma prática. Analisaremos uma aplicação construída sem utilizar totalmente a OO e então transformaremos a mesma aplicação, utilizando conceitos de Classes, Métodos e Encapsulamento, entendendo como estes conceitos e práticas tão particulares da OO tornarão nossa aplicação mais extensível, coesa e simples. Ao final teremos transformado nosso código de maneira que possamos reutilizá-lo tanto em uma aplicação Windows como em uma aplicação Web.
A programação orientada a objetos (POO) teve sua origem pouco antes de 1970, mas apenas nos últimos quinze anos voltou à tona (veja os princípios da POO na Nota do DevMan). Apesar de ser o paradigma mais divulgado hoje em dia, é o menos compreendido pela maioria dos desenvolvedores. De lá para cá muita coisa aconteceu, como a evolução do Windows, o surgimento das ferramentas RAD - Rapid Application Development e da plataforma .NET. Mas justamente por causa da facilidade e apelo visual do paradigma RAD, passamos a programar direcionados por eventos(EDP – Event-Driven Programming), onde a interface gráfica assume o papel principal.
Nesse paradigma evoluímos um protótipo rapidamente, usando
coleções prontas de componentes, apenas ajustando algumas propriedades e
escrevendo código nos chamados manipuladores de eventos( ...