›‹ Home ›‹ Sobre ›‹ Portifólio ›‹ Contato
 
         
Programação orientada a objetos - OOP - Conceitos


Imagine que você tenha que desenvolver um programa para implementar uma loja virtual na internet. Uma abordagem usando a programação orientada a objetos - OOP, nos leva a que o programa deverá conter os seguintes objetos: itens vendidos/comprados, a cesta de compra, o cupom de desconto e o caixa. Cada um destes objetos irão interagir uns com os outros afim de fazer o programa funcionar. Ex: Quando o caixa efetua a totalização do cupom ele deverá verificar o preço de cada item vendido.

A definição de um programa em termos de objetos é uma maneira mais profunda de construir um software. Ao pensar em termos de objetos você será forçado a ver tudo a um nível conceitual do que um objeto pode fazer e qual o comportamento dos objetos. Esta visão a nível conceitual dos objetos é uma ruptura na antiga forma de ver como a coisa é feita ou seja uma visão de comportamento e não de implementação. Ao invés de modelar o seu programa como um conjunto separado de rotinas e dados você irá modelar o seu programa em termos de objetos.

A esta altura podemos definir um objeto como um construção de software que encapsula estado e comportamento. De uma forma mais explicita podemos também dizer que um objeto é uma instância de uma classe. Para uma linguagem de programação orientada a objetos tudo são objetos; do tipo mais básico até a instância de uma classe complexa.

Como os objetos do mundo real, os conceitos da OOP agrupam objetos pelos seus comportamentos e atributos comuns, assim, uma classe define todas as características comuns para um tipo de objeto, ou seja, uma classe define todos os atributos e comportamentos expostos pelo objeto e define também a quais mensagens o objeto vai responder/receber.

Pensando nisto podemos dizer que uma classe define os atributos e comportamentos comuns compartilhados por um tipo de objeto. Objetos de um certo tipo ou classificação compartilham os mesmos comportamentos e atributos. Uma classe atua como um modelo sendo que a partir dela você cria uma instância de um objeto. Os atributos são a característica visível da classe. Um objeto pode expor um atributo através de uma ligação direta para alguma variável ou pelo retorno de um valor através de um método.

O comportamento é uma ação realizada por um objeto quando envia uma mensagem ou responde a uma mudança de estado. É algo que o objeto faz,e você pode entender isto em temos de chamada de métodos e funções.

A OOP não é a panacéia universal, é apenas uma evolução na arte de desenvolvimento de software, por isto, se você estiver usando os conceitos da OOP pela primeira vez deve tomar os seguintes cuidados:

1-) Não é por que você esta usando uma linguagem orientada a objetos que o seu código vai estar orientado a objetos. Os conceitos da OOP estão além da ferramenta usada , e você pode escrever um código não orientado a objetos usando uma linguagem orientada a objetos como o VB.NET , C# ou Java. A verdadeira programação orientada a objetos o desafia a ver seus problemas, na área de desenvolvimento de software, como um grupo de objetos e a usar os conceitos de herança, encapsulamento e polimorfismo corretamente aplicados à solução do seu problema.

2-) Você precisa aprender a reusar código sem culpa. Dois problemas principais se apresentam como dificuldades a serem superadas para atingir este objetivo:

Programadores gostam de criar código novo(isso os excita, pois da a sensação de que eles têm o poder...);
Existe um sentimento de que ao usar um código pronto o programador não estaria confiando no seu próprio código (o meu é sempre o melhor...);
Se você pensar no tempo que estará economizando ao usar um código que já esta funcionando bem e foi testado , chegará a conclusão que você pode usar este tempo que irá sobrar para otimizar o código já existente ao invés de tentar reinventar a roda...

3-) A OOP não é a cura para todos os males na área de desenvolvimento de software. Embora ela ofereça muitos benefícios, haverá momentos nos quais você não poderá usar OOP. Usar OOP não garante o sucesso do seu projeto. O sucesso vem com planejamento cuidadoso, análise bem feita e codificação robusta.

4-) Aprenda a documentar o seu código/projeto de forma que qualquer desenvolvedor possa compreender. O que não pode ser compreendido não poderá ser reutilizado.

     
www.leonardobaeta.net - © 1998 - 2007 - Tecnologia e Negócios Web