programação orientada a Objeto refere-se ao conceito em linguagens de alto nível, tais como Java, Python e que usa Objetos e classes em suas implementações. OOP tem quatro grandes blocos de construção que são, polimorfismo, encapsulação, abstração e herança., Existem outros paradigmas de programação, como programação processual em que os códigos são escritos sequencialmente. Python e Java são linguagens de programação de alto nível multi-paradigm, o que significa que eles suportam tanto OOP quanto programação processual. Um programador decide sobre o paradigma a usar com base em sua experiência e os problemas que ele tenta resolver. No entanto, não há controvérsia de que OOP torna a programação mais fácil, mais rápida, mais dinâmica e segura., Esta é uma das principais razões pelas quais o Java e o Python são as linguagens de programação mais populares no mundo de hoje.se você quiser aprender Java e Python ou qualquer outra linguagem de programação orientada a objetos, então você deve entender esses paradigmas de programação orientados a objetos que são um conceito relativamente fácil de entender. Vamos dar uma vista de olhos.o que é herança?
em Java e Python, os códigos são escritos em objetos ou blocos se você estiver adotando a metodologia OOP., Os objetos podem interagir uns com os outros usando as propriedades de cada bloco ou estendendo as funcionalidades de um bloco através da herança. A herança garante que os códigos são reutilizados. Há milhões de bibliotecas Java e Python que um programador pode usar através da herança. As propriedades de uma classe podem ser herdadas e estendidas por outras classes ou funções. Existem dois tipos de aulas. Um é o pai ou a classe base, e o outro é a classe criança que pode herdar as propriedades da classe pai. A herança é um pilar importante na programação orientada a objetos., É o mecanismo pelo qual classes em Java, Python e outras linguagens OOP herda o atributo de outras classes
uma classe-mãe pode compartilhar seus atributos com uma classe-filha. Um exemplo de uma implementação de classe pai está em DDL (Dynamic-link library). Um DDL pode conter classes diferentes que podem ser usadas por outros programas e funções
um exemplo real de herança é uma mãe e um filho. A criança pode herdar atributos como altura, batedores de voz, cor., A mãe pode reproduzir outras crianças com os mesmos atributos também
Você pode criar uma função ou classe chamada “Mover robô”, que controla um robô para se mover. E você poderia criar métodos e funções em outros programas que podem herdar a classe “mover robô” sem reescrever os códigos vezes sem conta. Você também pode estender esta classe, herdando-a e escrevendo mais alguns códigos para ele que iria instruir um robô para se mover e também executar em algumas circunstâncias específicas usando if e else instrução., Com a herança, você pode criar vários robôs que herdariam os atributos da classe pai “mover robô”, que garante a reutilização de código.
in summary, Inheritance is concerned with the relationship between classes and method, which is like a parent and a child. Uma criança pode nascer com alguns dos atributos dos pais. A herança garante a reutilização de códigos da mesma forma que várias crianças podem herdar os atributos de seus pais.,
Quando queremos criar uma função, método ou classe, procuramos uma superclasse que contém o código ou algum do código que queremos implementar. Podemos então derivar a nossa classe da existente. Em Java, nós fazemos isso usando a palavra-chave “Extends”, e em Python, nós conseguimos isso herdando os atributos de uma classe, chamando o nome da classe. trabalha em operações? sabia que uma aplicação como a NerdVision pode melhorar o MTTR (tempo médio de reparação)?,
encapsulamento
Este é um estilo de programação onde detalhes de implementação estão escondidos. Reduz grandemente a complexidade do desenvolvimento de software. Com encapsulação, apenas os métodos são expostos. O programador não tem que se preocupar com detalhes de implementação, mas está apenas preocupado com as operações. Por exemplo, se um desenvolvedor quer usar uma biblioteca de link dinâmico para exibir data e hora, ele não tem que se preocupar com os códigos na classe de data e hora, em vez disso, ele simplesmente usaria a classe de dados e tempo, usando variáveis públicas para chamá-lo., Em essência, a encapsulação é alcançada em Python e Java, criando variáveis privadas para definir classes escondidas e, em seguida, usando variáveis públicas para chamá-las para uso. Com esta abordagem, uma classe pode ser atualizada ou mantida sem se preocupar com os métodos que os utilizam. Se você está chamando uma classe em dez métodos e você precisa fazer alterações, você não tem que atualizar todos os métodos em vez de atualizar uma única classe. Uma vez que a classe é alterada, ele automaticamente atualiza os métodos em conformidade. Encapsulamento também garante que seus dados são escondidos de modificações externas., Encapsulamento também é conhecido como Data-Hidden. encapsulamento pode ser visto como um escudo que protege os dados de serem acessados por código externo.
na essência, a encapsulação liga os dados e o código como uma única unidade e impõe a modularidade.
Polimorfismo
Polimorfismo significa existentes em muitas formas. Variáveis, funções e objetos podem existir em múltiplas formas em Java e Python., Existem dois tipos de polimorfismo que são polimorfismo de tempo de execução e polimorfismo de tempo de compilação. O tempo de execução pode assumir uma forma diferente enquanto a aplicação está em execução e o tempo de compilação pode assumir uma forma diferente durante a compilação.
um excelente exemplo de polimorfismo na programação orientada a Objetos é um comportamento de cursor. Um cursor pode assumir diferentes formas, como uma seta, Uma linha, cruz ou outras formas, dependendo do comportamento do usuário ou do modo de programa., Com polimorfismo, um método ou subclasse pode definir seus comportamentos e atributos, mantendo parte da funcionalidade de sua classe-mãe. Isso significa que você pode ter uma classe que exibe data e hora, e então você pode criar um método para herdar a classe, mas deve exibir uma mensagem de boas-vindas ao lado da data e hora. Os objetivos do polimorfismo na programação orientada a Objetos é reforçar a simplicidade, tornando os códigos mais extensíveis e de fácil manutenção de aplicações.,
herança permite-lhe criar hierarquias de classes, onde uma classe de base dá o seu comportamento e atributos a uma classe derivada. Você é então livre para modificar ou estender a sua funcionalidade. O polimorfismo garante que o método adequado será executado com base no tipo do objeto chamador.
Os códigos de programa seriam executados de forma diferente em um sistema operacional diferente. A capacidade do código de programa exibindo diferentes comportamentos em todo o sistema operacional é conhecida como polimorfismo em OOP. Você pode criar uma classe chamada “Mover” e então quatro pessoas criam animais que herdariam a classe mover., Mas não sabemos o tipo de animais que eles criariam. Então, polimorfismo seria permitir que os animais se mover, mas de formas diferentes com base nas características físicas
cria um Caracol que herda o movimento de classe, mas o caracol nadaria
B cria um Canguru que herda o movimento de classe, mas o Canguru seria bissexto
C cria um Cão que herda o movimento de classe, mas os cães em pé,
D cria um Peixe que herda o movimento de classe, mas o Peixe iria nadar.o polimorfismo assegurou que todos estes animais se movem, mas sob diferentes formas., Como os programas se comportariam não seria conhecido até o tempo de execução.
desenvolvedores e operações precisam trabalhar juntos para o sucesso.
O NerdVision traz essas duas equipes em conjunto para tornar a vida melhor para todos
de Abstração
de Abstração em Java e Python é uma metodologia de programação em que os detalhes dos códigos de programação está escondido do usuário, e somente as coisas essenciais são exibidos para o usuário. A abstração está mais preocupada com as ideias do que com os eventos., É como um usuário executando um programa (navegador Web) sem ver os códigos de fundo. A abstração é alcançada em classes abstratas ou interface em Java e Python. NetBeans e Eclipse IDE implementa abstração para Java enquanto Django implementa abstração para Python.
um programador usa um ambiente de desenvolvimento integrado para projetar uma IU sem se preocupar com como a IDE gera os códigos HTML. Em essência, a abstração exibe os detalhes essenciais para o usuário sozinho.,
conclusão
a ideia principal por trás da Programação Orientada a Objetos é simplicidade, reutilização de código, extensibilidade e segurança. Estes são alcançados através da encapsulação, abstração, herança e polimorfismo. Para uma língua ser classificada como OOP, ela deve ter estes quatro blocos OOP. A abstração tem a ver com Exibir Apenas o aspecto relevante para o usuário, por exemplo, ligando o rádio, mas você não precisa saber como o rádio funciona. A abstração garante a simplicidade. Herança tem a ver com métodos e funções que herdam os atributos de outra classe., O objetivo principal é a reutilização de código que garante que os programas são desenvolvidos mais rapidamente. DRY (não se repita) é um conceito em herança que implica que em um programa, você não deve ter códigos diferentes que são semelhantes. Em vez disso, ter uma classe e usar outros métodos para chamá-los e estender as funcionalidades, quando necessário. O polimorfismo permite que o código do programa tenha um significado ou funções diferentes, enquanto a encapsulação é o processo de manter as classes privadas para que elas não possam ser modificadas por códigos externos.