Por que Aprender Orientação a Objetos?

Se viajarmos no tempo e voltarmos um pouco mais, vamos nos deparar com uma técnica de programação que foi muita utilizada no passado, a programação procedural.

Esta técnica foi inserida muito tempo antes da programação orientada a objetos e consiste basicamente em dividir em pequenos blocos, que são chamados de procedimentos ou sub-rotinas.

Particularmente a orientação a objetos é um tema que deve ser sempre estudado, revisado e atualizado os conceitos, sempre haverá o que evoluir e melhorar.

CURIOSIDADE:

Software desenvolvidos com técnicas procedurais é possível atingir facilmente 15.000 linhas de códigos.

E aqui já nos deparamos com um dos pontos fracos na programação procedural.

A programação Orientação soluciona esse e outros problemas, informações podem ser organizadas, encapsuladas (“escondido”) para evitar manipulação indevida e conceder a facilidade da reutilização de código.

Uma das principais características e vantagens da orientação a objetos é a herança, mas ela não vem sozinha e sim acompanhada dos pilares da Orientação a Objetos, que visa resolver os problemas de usabilidade, compartilhamento e arquitetura de divisão em módulos.

Pilares da Orientação a objetos.

Os 4 Pilares da Orientação a Objetos:

Abstração: É a representação do mundo real em um objeto. Como no mundo real temos características, comportamentos e ações, a abstração visa levar para o objeto a visão do mundo real em forma de propriedades, comportamentos, métodos e ações.

Encapsulamento: É a técnica de fornecer mais segurança a sua aplicação, através da proteção, escondendo implementações, comportamentos e propriedades quando necessário.

Herança: Uma das grandes vantagens é esta técnica, que permite compartilhar com outros objetos algumas de suas características, comportamentos e ações, isso se dá pelo fato de um objeto herdar de outro, conhecido também com herança de classe pai para classe filha (Classe Base p/ Classe Derivada).

Polimorfismo: É umas das principais técnicas e das mais avançadas e que permite que objetos alterem seu comportamento conforme a necessidade. Como alguns animais na natureza, que tem esta capacidade de mudar seu comportamento ou forma, é a partir desta ideia que a aplicação do polimorfismo é aplicada na orientação a objetos.

A grande ideia da programação orientada a objetos é conseguir vencer o desafio de dividir o código do software em classes, onde suas funcionalidades estejam em uma determinada classe, ou seja, conseguir centralizar nas classes as implementações destas funcionalidades.

A adoção da Orientação a Objetos, em primeiro momento nos leva a um ganho qualitativo, com o tempo podemos alcançar o ganho quantitativo. É muito comum encontrar no mercado gestores que esperam por um ganho quantitativo, esperando grande ganho de produtividade, mas a programação orientada a objetos tem como primeiro objetivo a qualidade do código, para que seja possível entregar o prometido: “Reusabilidade, compartilhamento, proteção e segurança”.

A Orientação a Objetos é um tema extenso e importante, é um grande desafio estudar, implementar e evoluir o conhecimento no tema. Há assuntos relacionados como Classes, Objetos, Instância, Generalização e Especialização e outros, mas são assuntos que abordarei em outro artigo para não ficar extenso monótona sua leitura.

Devemos aprender a orientação a objetos pois nos trás grandes benefícios profissionais, como: Qualidade no código, base sólida para codificação, base e fundamentos para construir software estruturados e sólidos, facilita componetização e rotinas de testes, para citar alguns importantes, mas com certeza grandes ganhos serão atribuídos ao profissional que dominar este assunto, e quem sabe se dar bem em uma boa entrevista de emprega ao demonstrar conhecimentos sólidos em programação orientada a objetos, pense nisso!

Gostou do texto, do tema, e do assunto abordado, então curti, compartilha e vamos para o próximo onde abordarei os outros temas relacionados.

Desde de já agradeço pela Leitura, Abração!!!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store