Este artigo apresenta os principais aspectos e conceitos referentes à orientação a objetos, sendo pontuados os conceitos deste paradigma no processo de desenvolvimento do software e apresentados os benefícios de sua utilização traçando uma relação com a engenharia de software
Para que serve:
A orientação a objetos é um paradigma de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos.
Em que situação o tema útil:
A análise e projeto orientados a objetos têm como meta identificar o melhor conjunto de objetos para descrever um sistema de software. O funcionamento deste sistema se dá através do relacionamento e troca de mensagens entre estes objetos. Sendo assim, a discussão deste tema é útil para aqueles que tenham interesse em desenvolver sistemas utilizando este paradigma.
Resumo DevMan
A utilização do paradigma orientado a objetos está presente em todas as etapas do processo de desenvolvimento, indo da análise, passando pelo projeto até as fases de testes e implementação. É um fator que pode ser decisivo na construção de sistemas visando alcançar os objetivos esperados dentro de limites de tempo e custo do projeto.
A orientação a objetos surgiu com a necessidade de se criar um paradigma de programação simples baseado na percepção humana dos objetos ao seu redor. Este novo paradigma não é apenas um modo de programar, mas uma maneira de pensar e conceber as ideias. Neste paradigma, o software é composto por uma coleção de objetos que interagem entre si através de mensagens, simulando as ações que ocorrem no mundo real.
Neste contexto, neste artigo serão abordados os principais aspectos e conceitos referentes à orientação a objetos. Em seguida serão pontuados os conceitos deste paradigma no processo de desenvolvimento do software apresentando os benefícios de sua utilização traçando uma relação com a engenharia de software.
Classe, Objeto, Atributos e Métodos
Um objeto se refere a uma entidade única no programa com características e funcionalidades inerentes a sua classe que determina o seu “ser”. A classe pode ser entendida como sendo um molde que determina o que será o objeto, como ele é, e o seu comportamento no sistema. Por exemplo, a classe carro (apresentada na Listagem 1), que possui atributos de cor e potência pode possuir uma gama variada de valores, como verde, amarelo ou azul e 60 cv ou 105 cv. Estes valores são atribuídos aos seus atributos a partir do momento que instanciamos esta classe e criamos um objeto.
Além dos atributos, os objetos possuem também métodos que determinam o seu comportamento em relação a outros objetos ou a si mesmo. Por exemplo, um objeto pessoa poderia interagir com um objeto carro chamando o método “Ignicao”, ligando o carro.
Listagem 1. A classe carro é instanciada no objeto Ferrari.
//Classe Carro
public class Carro
{
public string cor;
public int potencia;
public void Ignicao()
{
}
}
//Instância da Classe Carro
Carro Ferrari = new Carro();
Ferrari.cor = “Azul”;
Farrari.potencia = 300;
...