Programação Orientada a Objetos

Olá pessoal, hoje neste artigo vou passar algumas definições básicas, mas necessárias sobre programação Orientada a Objetos, onde quem ainda não conhece vai ter a oportunidade de aprender e quem já conhece vai poder relembrar estes conceitos.

Primeiramente é muito interessante saber que uma das vantagens em programar Orientado a Objetos é que você é capaz de criar módulos que não precisam ser modificados, você pode simplesmente criar um novo objeto que irá herdar as características de outros já existentes. Algumas destas vantagens são:

Simplicidade: os objetos escondem a complexidade do código. Pode-se criar uma complexa aplicação gráfica usando botões, janelas, barras de rolamento, etc., sem conhecer complexidade do código utilizado para criá-los.

Reutilização de código: Um objeto, depois de criado, pode ser reutilizado por outras aplicações, ter suas funções estendidas e serem usados como blocos fundamentais em sistemas mais complexos.

Inclusão Dinâmica: objetos podem ser incluídos dinamicamente no programa, durante a execução. Isso permite que vários programas compartilhem os mesmos objetos e classes, reduzindo o seu tamanho final.

O QUE É UM OBJETO?

Objetos são instâncias das Classes, estas que são como moldes que definem quais atributos e funcionalidades dos objetos de seu tipo terão. Um objeto é capaz de armazenar estados através de seus atributos e reagir a mensagens enviadas a ele, assim como se relacionar e enviar mensagens a outros objetos.

Pensar em termos de objetos é muito parecido a como faríamos na vida real. Por exemplo, vamos pensar em um carro, diríamos que o carro é o elemento principal que tem uma série de características, como a cor, o modelo ou a marca. Ademais tem uma série de funcionalidades associadas, como podem ser andar, parar ou estacionar.

Basicamente o  carro seria o objeto, as propriedades seriam as características como a cor ou o modelo e os métodos seriam as funcionalidades associadas como andar ou parar.

Os objetos são instancias de uma classe qualquer. Quando criamos uma instancia temos que especificar a classe a partir da qual ela será criada. Esta ação de criar um objeto a partir de uma classe se chama instanciar.

Para criar um objeto temos que escrever uma instrução especial, chamada de construtora (constructor) que pode ser distinta dependendo da linguagem de programação que se empregue, mas será algo parecido a isto.

meuCarro = new Carro();

Com a palavra new especificamos que temos que criar uma instancia da classe que continua a seguir. Dentro dos parênteses poderíamos colocar parâmetros com os quais se inicia o objeto da classe carro.

Quando temos um objeto suas propriedades tomam valores. Por exemplo, quando temos um carro a propriedade cor tomará um valor em concreto, como vermelho ou  cinza. O valor concreto de uma propriedade de um objeto se chama estado.

Para acessar a um estado de um objeto e ver seu valor ou mudá-lo utilizamos o operador ponto.

meuCarro.cor = vermelho

O objeto é meuCarro, logo colocamos o operador ponto e por último o nome da propriedade a qual desejamos acessar. Neste exemplo, estamos mudando o valor do estado da propriedade Cor do Objeto meuCarro para vermelho com uma simples atribuição.

Uma mensagem em um objeto é a ação de efetuar uma chamada a um método. Por exemplo, quando dizemos a um objeto carro para andar, estamos lhe passando a mensagem “ande”.

Para mandar mensagens aos objetos utilizamos o operador ponto, seguido do método que desejamos utilizar.

meuCarro.andar()

Neste exemplo, passamos a mensagem andar(). Deve-se colocar parênteses assim como com qualquer chamada a uma função, dentro podemos passar parâmetros.

O QUE É UMA CLASSE?

As classes são declarações de objetos, também podemos definir como abstrações de objetos. Isto quer dizer que a definição de um objeto é a classe. Quando programamos um objeto e definimos suas características e funcionalidades na verdade o que estamos fazendo é programar uma classe. No exemplo anterior, falávamos da classe carro  porque somente estivemos definindo suas formas.

O QUE É UMA PROPRIEDADE?

As propriedades ou atributos são as características dos objetos. Quando definimos uma propriedade normalmente especificamos seu nome e seu tipo. Podemos ter a idéia de que as propriedades são algo assim como as variáveis onde armazenamos os dados relacionados com os objetos.

O QUE É UM MÉTODO?

São as funcionalidades associadas aos objetos. Quando estamos programando as classes as chamamos de métodos. Os métodos são como funções que estão associadas a um objeto.

Neste artigo apenas fiz referência às coisas mais básicas. Também existem mecanismos como a herança e o polimorfismo.

A herança serve para criar objetos que incorporem propriedades e métodos de outros objetos. Assim, poderemos construir uns objetos a partir de outros sem ter que reescrevê-lo todo.

O polimorfismo serve para que não tenhamos que nos preocupar sobre o que estamos trabalhando, e abstrairmos para definir um código que seja compatível com objetos de vários tipos.

São conceitos que irei falar em outra oportunidade.

Até mais

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Join 155 other followers