O programador tem o poder de criar e transformar (e até estragar) muitas coisas, e isso pode ser feito de várias formas, esse poder é chamado 'paradigmas da programação'. Estes paradigmas são comumente confundidos com as linguagens de programação, apesar de suas semelhanças, elas não são iguais!
Os paradigmas são modelos de construção do código, podendo ser aplicados a diversas linguagens, obviamente, desde que estas linguagens permitam essa aplicação. Existem diversos casos em que se pode aplicar mais de um paradigma em um código, no ABAP isso é plenamente possível, por exemplo: podemos utilizar a programação orientada a objetos e a clássica e ainda muito utilizada a programação Procedural.
Como vocês sabem, eu sou trainee, e imagino que você também tem suas dúvidas, estava ouvindo um podcast, e o convidado disse algo muito interessante: se você não tem dúvidas, é porque você está mal-informado! Achei incrível, pois justamente nós, como programadores, não saberemos na plenitude sobre toda a linguagem, ou estrutura, fique em paz jovem padawan, assim como nós, todos os programadores têm suas dúvidas.
Então o que é um paradigma?
Os paradigmas podem ser entendidos como um tipo de estruturação ao qual a linguagem deve respeitar, de maneira simples, o paradigma é o 'caminho' que você trilhará no código!'.
Existem vários paradigmas além do orientado a objetos e o procedural, como o paradigma imperativo, declarativo, funcional, lógico e orientado a eventos.
O que é a orientação a objetos?
A programação orientada a objetos, veio aproximar o programa e suas estruturas a realidade, daí o nome 'objeto', algo que devemos ter consciência é que os programas em que trabalhamos são abstratos, sim, nós não conseguimos compreender os códigos com os nossos sentidos, logo, nós conseguimos deixar o código tangível, podendo ser explicado e compreendido com base na realidade, por atributos como exemplo.
O que são classes e objetos?
Existe um exemplo clássico sobre classes e objetos, o exemplo do carro, imagine um carro, ele tem quatro rodas, faróis, lanternas, motor, cambio, bancos, volante e muitas outras coisas, estes detalhes são as características do carro, que na programação serão os atributos, e este mesmo carro realiza algumas ações, como acelerar, frear, acender os faróis e tocar aquela música que você gosta, estes comportamentos são suas ações ou métodos.
Uma classe é um conjunto de características e comportamentos que definem o conjunto de objetos pertencentes a esta classe, com a criação de um objeto, tornando a classe mais próxima à realidade, esta criação se chama instanciação da classe. Tornamos a classe um 'molde' para criar um objeto.
Quais são as principais caracteristicas do POO?
Existem quatro principais características que derivam dos conceitos de classe e objeto, estas que são extremamente importantes para o paradigma. Os conceitos são o encapsulamento, a herança, as interfaces e o polimorfismo.
Encapsulamento
Encapsular os dados de uma aplicação significa evitar que estes sofram acessos indevidos. Para isso, é criada uma estrutura que contém métodos que podem ser utilizados por qualquer outra classe, sem causar inconsistências no desenvolvimento de um código.
Herança
A herança é um princípio próprio à programação orientada a objetos (POO) que permite criar uma nova classe a partir de uma já existente. Herança, também chamada de subclasses, provém da subclasse, da classe recém-criada que contém atributos e métodos da qual deriva.
Interface
Podemos definir como interface o contrato entre a classe e o mundo exterior. Quando uma classe implementa uma interface, se compromete a fornecer o comportamento publicado por esta interface.
Polimorfismo
O principal conceito é a propriedade de duas ou mais classes derivadas de uma mesma superclasse responderem a mesma mensagem, cada uma de uma forma diferente. Ocorre quando uma subclasse redefine um método existente na superclasse, ou seja, quando temos os métodos sobrescritos
Comentários
Postar um comentário