Iniciando com Orientação à Objetos — Conhecendo um Objeto
O guia para primeiras impressões com um dos paradigmas mais utilizados no mundo da programação
Neste artigo, você verá as primeiras impressões relacionadas a Orientação à Objetos, ele é destinado a pessoas que estão iniciando no mundo da programação, seja por um curso técnico, uma faculdade ou até mesmo de maneira autônoma.
Introdução
POO ou Programação Orientada à Objetos, é um modelo de análise em que usa-se a filosofia de tentar deixar um determinado problema o mais próximo o possível da realidade, fazendo uma espécie de ponte entre o mundo real e o virtual.
Este paradigma é altamente recomendado quando:
- Existe uma equipe (com mais de 1 programador) no qual nem todo mundo precisa saber 100% do sistema em questão, pois uma das ideias da POO é a reutilização de códigos.
- Em que no escopo do projeto não está descrito 100% das funcionalidades, podendo haver muitas mudanças no decorrer do tempo em que esteja sendo realizada a codificação. A implementação da Programação Orientada à Objetos faz com que partes dos códigos não fiquem engessadas, deixando o projeto mais suscetível a eventuais mudanças.
Paradigmas de programação
Um paradigma, em sumo, pode se entender como uma espécie de receita para resolver um determinado problema. A POO é um paradigma de programação, ou seja, ele é um meio de resolver determinados tipos de problemas dentro da programação.
Existem outros tipos de paradigmas, como:
- Programação Procedural
- Java, Pascal, C, C++ - Computação Paralela
- C, C++, Java - Programação Funcional
- JavaScript, Haskell, Scalla
Acima estão somente alguns dos paradigmas de programação existentes e exemplos de linguagens que os aplicam.
Descrevendo um objeto
Quando falamos em objetos, literalmente podem ser objetos do mundo real, como por exemplo, um carro. Um carro é um objeto, no qual possui características e funções.
O que são características?
A característica, por si só é algo que caracteriza ou distingue algo ou alguém, tendo em vista que ela sempre possui um “identificador” e um “valor”, por exemplo:
— O Joãozinho tem o cabelo preto
Uma característica de Joãozinho? O cabelo (identificador) que é preto (valor).
— O carro é vermelho
Uma característica do carro? A cor (identificador) que é vermelha (valor).
Neste caso, o identificador na frase está omitido, porém sabemos pela nossa interpretação de texto que estamos falando da cor do veículo.
Observe que marquei a característica (identificador) como negrito e o valor dela de itálico para que seja de melhor entendimento para todos que eventualmente irão ler este artigo.
Agora que sabemos o que é uma característica, vamos detalhar algumas destas do objeto Carro, como citamos anteriormente.
Um carro possui as seguintes características:
- Marca
- Modelo
- Cor
- Ano
Limitamos a 4 características pois são só por fins didáticos, mas um carro possui N destas, como: Tipo de Direção, Torque, Quantidade de Portas, etc.
Um Carro também possui as seguintes funções:
- Ligar
- Acelerar
- Frear
- Desligar
Assim como as características, limitamos a 4 para fins didáticos, mas poderíamos citar outras funções como: Ligar faróis, Colocar no farol alto, Buzinar, etc.
Trazendo isso para o mundo da programação, poderíamos criar uma classe chamada Carro, em que teríamos nossas características como atributos e funções como métodos. Abaixo vou mostrar de fato como ficaria esse objeto em uma classe Java, mas fique tranquilo, neste artigo não iremos falar muito sobre o código, vamos ficar mais só com o conceito inicial sobre o que é um objeto.
Conclusão
Neste artigo vemos o que é um paradigma de programação, as vantagens de utilizar a Orientação à objetos nos projetos, exemplos de outros paradigmas, linguagens que podem aplicá-lo e por fim vimos na prática como é o detalhamento de um objeto, que no nosso caso foi o Carro e como ficaria uma classe dele modelado em Java.
Se você chegou até aqui, espero que tenha gostado e se gostou, deixe um clap e me siga para ver mais conteúdos como este.
A ideia é de transformar este artigo em uma série que englobe grande parte da orientação à objetos e se transforme em um tutorial, do básico ao avançado sobre esse grandiosíssimo paradigma. A medida que eu for adicionando novos posts relacionados à este, irei colocando antes da introdução o link de todos os outros para caso queira ir um pouco mais a fundo.
Obrigado por ter lido meu artigo, até mais! ❤