O que é REALMENTE Programação Orientada a Objetos (POO)? Entenda.

O que é REALMENTE Programação Orientada a Objetos (POO)? Entenda.



Olá Pessoal,

Venho através deste POST falar sobre um tópico muito abordado e usado em desenvolvimento de sistemas que AINDA GERA DÚVIDAS quanto ao seu significado. Estou falando da famosa PROGRAMAÇÃO ORIENTADA A OBJETOS ou simplesmente (POO).

Apesar de não ser uma técnica nova, a mesma apresenta ser DESAFIADORA para os estudantes em programação (e até mesmo alguns profissionais), que encontram dificuldades em seu uso e implementação no código pelo fato do termo “orientação a objetos” gerar muita confusão.

Então vamos entender neste POST o que é REALMENTE a Programação Orientada a Objetos.

 



Entendendo o que é Programação Orientada a Objetos (POO)

Muitos estudantes que iniciam os seus estudos com programação por meio do aprendizado da lógica de programação com a implementação de algoritmos estruturados entende que a construção de programas consiste em escrever instruções expressas por meio de uma linguagem de programação, que serão executadas passo a passo para a realização de tarefas (conceitualmente falando, um algoritmo). Neste aprendizado são vistos tópicos como Introdução à Programação, Variáveis e Tipos de Dados, Estruturas Condicionais, Estruturas de Repetição e etc.

Apesar de toda a introdução inicialmente parecer um pouco difícil para aqueles que estão começando a programar pela primeira vez, a persistência pelo estudo e conhecimento faz com que o aluno adquira a experiência, eliminando aos poucos as dificuldades (e em certa parte o MEDO) de desenvolver programas básicos. (Recomendo um artigo meu sobre “Motivos para perder o medo de aprender a programar”, clicando NESTE LINK).

Após aprender todos os tópicos fundamentais sobre programação, sentimos a sensação que aprendemos “tudo” (de alguma forma) sobre criar programas de computador, até que surge em nossa frente a bendita Programação Orientada a Objetos (mudando toda a nossa perspectiva).

As linguagens de programação atualmente disponíveis hoje em dia são orientadas a objetos. O que torna confuso o aprendizado na verdade é o REAL SIGNIFICADO do que vem a ser Programação Orientada a Objetos, que explicarei agora.

Normalmente, quem ouve o termo Programação Orientada a Objetos pela primeira vez quando aprende a construir programas pensa que irá aprender a CONSTRUIR INTERFACES VISUAIS PARA APLICAÇÃO COM OBJETOS, que envolvem botões, formulários, caixas de textos e etc., que por incrível que pareça NÃO TEM NADA A VER com aplicação visual.

A Programação Orientada a Objetos (POO) que vem do inglês Object-Oriented Programming (OOP) nada mais é do que um PARADIGMA DE LINGUAGEM DE PROGRAMAÇÃO, onde são usados “objetos” como unidade básica de dados e ações de um programa. Na verdade, a Programação Orientada a Objetos é uma evolução da Programação Estruturada que conhecemos.



Entendendo rapidamente o que são Classes e Objetos

Em Programação Orientada a Objetos ouve-se muito no termo “objeto”, que muitos associam como um elemento visual ou componente gráfico que será visualizado em uma aplicação, que por incrível que pareça está totalmente longe disso.

Para entendermos o que é um “objeto” em POO preciso explicar primeiramente o conceito de classe.

Em POO chamamos de classe uma estrutura (ou abstração) que contém uma série de funcionalidades englobando o uso de atributos (variáveis da classe) e métodos (funções da classe), que será usado por uma aplicação (por meio do objeto).

Já o “objeto” consiste na instância da classe carregada em memória, que será utilizado na aplicação. De uma forma mais “compreensiva” o objeto nada mais é do que uma variável (também chamada de “variável objeto”) que “armazena” uma classe que pode ser manipulada durante a execução.

Então pela conclusão que chegamos, Programação Orientada a Objetos não tem nada a ver com elementos visuais de uma aplicação, visto que essa técnica pode ser usada até em programas baseados em “console” ou “prompt de comando” (assim como podemos construir uma interface visual usando só programação estruturada “pura”).

As linguagens mais populares que adotam o uso da Programação Orientada a Objetos são: Java, C#, C++, Ruby, Phyton, PHP, Javascript, Kotlin e etc. (OBS: A linguagem “C” pura não possui POO).



Quais são as principais Vantagens da Programação Orientada a Objetos?

Uma das características da Programação Orientada a Objetos mais marcantes é o “reaproveitamento de códigos”, através da técnica e “Herança”, onde uma classe (estrutura) pode “herdar” ações (métodos) e/ou atributos de outra classe existente, sem a necessidade de reescrever o código (desnecessariamente), economizando tempo.

Outra vantagem é o “Encapsulamento”, onde podemos separar aspectos internos e externos (envolvendo atributos e métodos) de uma classe por meio dos modificadores de escopo, que definem o nível de acesso aos elementos da classe.

Bom pessoal, por hoje é só, espero que vocês tenham compreendido o REAL SIGNIFICADO da Programação Orientada a Objetos.

Em breve farei um POST demonstrando na prática o uso da programação orientada a objeto passo a passo, englobando as principais e essenciais técnicas de uma forma clara e fácil.

Se você gostou desse POST não deixe de compartilhar, ele pode ser muito útil para outras pessoas interessadas no assunto.

Um forte abraço para todos

Posts Relacionados

Deixe uma resposta