Articles

programação orientada a objetos (OOP)

programação orientada a objetos (OOP) é um modelo de programação computacional que organiza o design de software em torno de dados, ou objetos, ao invés de funções e lógica. Um objeto pode ser definido como um campo de dados que tem atributos e comportamento únicos.

OOP foca nos objetos que os desenvolvedores querem manipular ao invés da lógica necessária para manipulá-los. Esta abordagem da programação é adequada para programas que são grandes, complexos e ativamente atualizados ou mantidos.

a organização de um programa orientado a objetos também torna o método benéfico para o desenvolvimento colaborativo, onde os projetos são divididos em grupos.os benefícios adicionais da OOP incluem a reutilização, escalabilidade e eficiência do Código. Mesmo quando se utilizam Micro-Serviços, os desenvolvedores devem continuar a aplicar os princípios da OOP.

o primeiro passo no OOP é coletar todos os objetos que um programador quer manipular e identificar como eles se relacionam — um exercício muitas vezes conhecido como modelagem de dados.

exemplos de um objeto podem variar de entidades físicas, como um ser humano que é descrito por propriedades como nome e endereço, até pequenos programas de computador, como widgets.

a depiction of object-oriented programming
an example of the conventions in object-oriented programming.

Uma vez que um objeto é conhecido, ele é rotulado com uma classe de objetos que define o tipo de dados que ele contém e quaisquer sequências lógicas que podem manipulá-lo. Cada sequência lógica distinta é conhecida como um método. Os objetos podem se comunicar com interfaces bem definidas chamadas mensagens.

princípios de OOP

programação orientada a Objetos é baseada nos seguintes princípios:

  • encapsulação. A implementação e estado de cada objeto são mantidos em privado dentro de um limite definido, ou classe. Outros objetos não têm acesso a esta classe ou a autoridade para fazer alterações, mas apenas são capazes de chamar uma lista de funções públicas, ou métodos. Esta característica de esconder dados fornece maior segurança do programa e evita a corrupção de dados não intencional.abstracção. Os objetos apenas revelam mecanismos internos que são relevantes para o uso de outros objetos, escondendo qualquer código de implementação desnecessário. Este conceito ajuda os desenvolvedores mais facilmente a fazer mudanças e adições ao longo do tempo.herança. Relacionamentos e subclasses entre objetos podem ser atribuídos, permitindo que os desenvolvedores reutilizem uma lógica comum, mantendo uma hierarquia única. Esta propriedade da OOP força uma análise de dados mais completa, reduz o tempo de desenvolvimento e garante um maior nível de precisão.polimorfismo. Objetos podem assumir mais de uma forma dependendo do contexto. O programa irá determinar que Significado ou uso é necessário para cada execução desse objeto, reduzindo a necessidade de duplicar o código.

linguagens de programação orientadas a objetos

enquanto Simula é creditada como a primeira linguagem de programação orientada a Objetos, as linguagens de OOP mais populares são:

  • Java
  • JavaScript
  • Python
  • C++
  • Visual Basic .NET
  • Ruby
  • Scala
  • PHP

OOPSLA é a conferência anual de Programação Orientada a objetos de Sistemas, Linguagens e Aplicações.

Criticism of OOP

the object-oriented programming model has been criticized by developers for multiple reasons. A maior preocupação é que a OOP enfatiza excessivamente o componente de dados do desenvolvimento de software e não se concentra o suficiente em Computação ou algoritmos. Além disso, o código OOP pode ser mais complicado de escrever e levar mais tempo para compilar.

métodos Alternativos para OOP incluem:

  • programação funcional
  • programação estruturada
  • programação imperativa

Mais avançadas linguagens de programação para dar aos desenvolvedores a opção de combinar esses modelos.