“O que é Orientação a Objetos? Por que preciso tanto saber sobre isso?” Essa é uma dúvida muito comum entre iniciantes no mundo do desenvolvimento de software.
Isso porque, quando falamos em desenvolvimento de software e seus paradigmas, existe uma sequência de aprendizado natural:
Não que isso seja uma regra fixa e imutável, mas na maioria das vezes é a curva de aprendizado de um desenvolvedor de sucesso. E, programação orientada a objetos (popularmente conhecida como POO), como você pode ver, ocupa um papel central nesse processo.
Aí você me pergunta: “Por que!?”
Pois então, é exatamente sobre isso que irei falar nesse post, para assim, te ajudar a posicionar a sua carreira profissional de acordo com todo esse cenário do mercado de programação.
Portanto, nesse post irei explicar o que é Programação Imperativa e, obviamente, o que é Programação Orientada a Objetos. Para finalizar, pretendo deixar claro o porquê de POO ser tão importante no mercado de desenvolvimento de software atual.
A Programação Imperativa é aquela que 99.99% dos desenvolvedores aprendem em seus primeiros contatos com a área de programação. Geralmente, você aprende esse paradigma através de um curso online como o da Becode ou na própria faculdade, digamos em um curso de Sistemas de Informação (ou qualquer outro similar), onde a primeira disciplina provavelmente será “Algoritmos Estruturados ou fundamentos da programação”.
Nessa etapa, o aluno irá ver os conceitos iniciais e extremamente importantes, geralmente pautados no “Portugol” ou, muitas vezes, na Linguagem C.
Isso é muito comum, pois linguagens como a C possuem em seu cerne o paradigma de desenvolvimento imperativo, ou seja, todo aplicativo/algoritmo é desenvolvido pensando-se em uma série de etapas que o software deve cumprir para atingir o seu objetivo.
Um exemplo clássico disso seria pensarmos quais são as etapas para a troca de uma lâmpada? De forma bem sucinta, podemos enumerar:
Simples não é? 12 passos.
Claro, para a grande maioria dos casos, você pode chegar a uma mesma solução executando passos diferentes, dependendo da sua escolha. Como, por exemplo, já levar a lâmpada boa quando subir a primeira vez na escada. É justamente isso que torna a computação algo muito divertido, visto que podemos chegar a resultados idênticos, por diferentes caminhos.
Enfim, a Programação Imperativa, em resumo, é isso, um passo-a-passo (uma sequência lógica) para se chegar a um objetivo final.
Essa etapa é natural e muito importante na formação de um desenvolvedor. Portanto, não deve ser atalhada!
Após o aprendizado da Programação Imperativa, geralmente, adquirido através de aulas de introdução à programação, fundamentos de programação, algoritmos, etc. O desenvolvedor novato percebe que muitas das ferramentas e linguagens atuais (Java, Ruby, Python e entre outras), são linguagens que utilizam, além do paradigma de programação imperativa, o paradigma Orientado a Objetos.
Isso, a princípio pode parecer ruim, “mais uma coisa para aprender”, mas na verdade é o que vai permitir o desenvolvedor “subir de nível”. Agora, sabendo POO, o desenvolvedor poderá resolver os mesmo problemas utilizando, não somente o passo-a-passo tradicional, mas também uma modelagem do problema de uma forma mais natural/real.
Vejamos o mesmo exemplo para trocar de uma lâmpada, agora usando a Programação Orientada a Objetos (POO). A primeira coisa a fazer é pensarmos em classes. Em outras palavras, coisas envolvidas no estudo de caso (trocar uma lâmpada):
Definido isso, podemos combinar suas características e ações. Por exemplo: “uma Pessoa pega uma Lâmpada boa”.
Apenas esse fato de dizer que a “Pessoa” “pega” “Lâmpada” “boa” já nos diz muita coisa, pois tudo isso pode ser modelado usando o paradigma de Orientação a Objetos. Em outras palavras, tudo não passa de modelar Objetos que possuem ações e características.
Em nosso caso, “Pessoa” seria uma classe/objeto, “pega” seria uma ação da “Pessoa”, “Lâmpada” seria uma outra classe/objeto e “boa” seria o estado/característica/atributo da “Lâmpada”.
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar