POO: O que é a Programação  Orientada a Objetos

Desde que foi criado, esse método mudou a forma como enxergamos a criação de códigos, e não à toa, permanece como um dos mais utilizados há anos.

POO é um paradigma de programação, ou seja, uma forma de estruturar um código que segue algumas regras, e que vão determinar a forma como os problemas serão resolvidos.

O que é Programação Orientada a Objetos?

Sua principal característica é que, ao programar, cada elemento do mundo real é representado por meio de um objeto no mundo virtual. Dessa forma, fica mais simples unificar dados e processos, e reutilizar códigos quando necessário.

Assim, seria possível reduzir a complexidade dos códigos, tornando-os compatíveis com computadores diferentes — algo que, à época, não era tão simples.

Além disso, a POO pode facilitar  o trabalho em equipe com diferentes programadores. Como o código pode ser reutilizado e compartilhado, a programação torna-se mais simples e escalável.

Quais estruturas fazem parte do código de POO?

Conjunto de objetos em que todos têm uma ou mais características em comum. É a classe que determina o modelo que será utilizado em todo o sistema.

Classe

Os objetos são elementos que pertencem a uma classe, que tem como propriedades os atributos e os métodos.

Objeto

Conjunto de características específicas de um objeto

Atributo

É por meio de um método que se modificam os atributos de um objeto

Método

Exemplo simples

Classe: seres humanos Objetos: nomes (cada um representa um ser humano com seus próprios atributos e métodos) Atributos: CPF, RG, endereço Métodos: habilidades e ações de cada um

A POO é um paradigma: ela segue determinados padrões resumidos por meio dos quatro pilares desse tipo de programação (regras que ditam o funcionamento e o comportamento do código).

Pilares da POO

Esse princípio é importante para reutilizar códigos, facilitando na hora de criar um sistema.

Capacidade de um objeto se passar por outro compatível. Sempre que um objeto é herdado, ele compartilha muitas características, porém uma ou mais devem ser reescritas, de forma que ele não seja idêntico ao original.

Polimorfismo

Capacidade de esconder detalhes da implementação do objeto, selecionando o que pode ser acessado publicamente, e criando uma “caixa preta” com as propriedades privadas.

Encapsulamento

Garante a segurança do código e facilita o controle de acesso de dados em um sistema.

Uma mistura do encapsulamento com o polimorfismo, consiste em representar um objeto de forma abstrata, que seja obrigatoriamente herdado por outras classes.

Abstração