Postagens

Programação orientada a objetos em um contexto histórico

Imagem
Para entender o estado atual da POO, você deve conhecer um pouco da história da programação. Ninguém concebeu a POO da noite para o dia. Em vez disso, a POO é apenas outro estágio na evolução natural do desenvolvimento de software. Com o passar do tempo, se tornou mais fácil identificar as práticas que funcionam e as que comprovadamente falham. A POO combina práticas comprovadas e testadas o mais eficientemente possível. Novo Termo OO é a abreviatura de orientado a objetos. OO é um termo geral que inclui qualquer estilo de desenvolvimento que seja baseado no conceito de ‘objeto’ — uma entidade que exibe características e comportamentos. Você pode aplicar uma estratégia orientada a objetos na programação, assim como na análise e no projeto. Você também pode dizer que OO é um estado da mente, uma maneira de ver o mundo todo em termos de objetos. Simplesmente, a OO contém tudo que pode ser denominado como orientado a objetos. Você vai ver o termo OO muitas vezes neste livro. Precursores d...

Diferenças e semelhanças entre Java e C++

Imagem
Agora que você conheceu ambas as linguagens, que tal ver no que elas se assemelham e se diferem? Confira abaixo: Design As duas linguagens são bem diferentes. Em compensação, ambas são muito boas em relação a sua performance, apesar da C++ ter a tendência de ser um pouco mais rápida, já que o Java necessita ser interpretado no momento da execução do código. Esse processo acaba tornando a linguagem Java um pouco mais lenta, mas, de qualquer forma, as duas linguagens têm um bom desempenho, mas de forma diferente. Popularidade As duas linguagens são muito utilizadas mundialmente. Porém, a C++ já era utilizada e reconhecida antes da Java entrar no mercado por volta de 2012.  Atualmente, a Java é a linguagem vista como mais popular, apesar do C++ ter sido desenvolvida para uso geral. Cada uma tem sua legião de fãs. Saiba Mais Convidamos você a assistir o vídeo sobre Introdução ao C++, onde conhecerá um pouco mais sobre essa linguagem. Confira!   ATIVIDADE DE FIXAÇÃO

Linguagem C++

Imagem
Essa linguagem é muito conhecida e utilizada desde 1990, principalmente no universo acadêmico, devido ao seu grande desempenho! Ela foi criada no início de 1980, por Bjame Stroustrup, no Bell Laboratories. A C++ possui diversos recursos que embelezam a linguagem C, principalmente trazendo a possibilidade da programação orientada a objetos. Com isso, surge a possibilidade da linguagem poder ser utilizada em grandes projetos com diversos programadores colaborando simultaneamente. C++ é uma linguagem de programação multiparadigma, onde podemos desenvolver um mesmo programa orientado a objetos (POO) ou procedural (linguagem estruturada). Ela nada mais é do que um desvio da linguagem C, sendo sua aplicação a principal diferença entre as duas: Aplicação Linguagem C Utilizada em programas a nível de sistema, que são os responsáveis por operações para gerenciar o próprio computador. Aplicação Linguagem C++ Utilizada para o desenvolvimento de programas que ajudam a resolver problemas específico...

Vantagens e desvantagens da linguagem Java

A linguagem Java possui diversas vantagens que tornam a programação muito mais rápida, fácil e eficiente. Vamos conhecê-las: Portabilidade: pode ser executada em várias plataformas como Windows, Mac, Linux, Unix, entre outras. Multi-Threaded: suporta multiprocessamentos, ou seja, permite realizar mais de um processo ao mesmo tempo. Criação de jogos: quando falamos em desenvolvimento de jogos, Java é a primeira linguagem a ser lembrada, já que ela possui vários recursos que facilitam a produção de inúmeros tipos de jogos. Gratuidade: a linguagem e seus ambientes de desenvolvimento são totalmente gratuitos. Utilização: a sua utilização atualmente tem amplitude mundial, sendo aplicada até mesmo em bancos e instituições do governo. Independência: Java é independente de qualquer plataforma, pois ela se conecta em diversas aplicações e sistemas. Apesar da linguagem Java possuir muitas vantagens, como toda a linguagem, ela também possui algumas desvantagens que vale a pena você conhec...

Linguagem Java

Imagem
Conforme você viu no módulo anterior, foi possível entender os quatro pilares da POO. Porém, ainda é necessário aplicar isso às linguagens utilizadas na orientação ao objeto. Desta forma, neste módulo, você descobrirá algumas linguagens de programação que utilizam o paradigma orientado a objetos, como Java, C# e C++ Linguagem Java Essa linguagem de programação foi criada nos anos 90, baseada na linguagem C. Ela foi desenvolvida pela empresa Sun Microsystems, que tem James Gosling como seu CEO. Mas atualmente a empresa Oracle comprou a linguagem. O diferencial da linguagem Java é ser multiplataforma, ou seja, um mesmo programa pode funcionar perfeitamente em Windows, Linux, Android e iOS. Atualmente ela é muito utilizada em desenvolvimento da Internet da Coisas (IoT), aplicações para celular, além de jogos on-line, aplicativos para Android, páginas da Internet, documentos interativos etc. Observe no código a seguir, um exemplo de uma classe desenvolvida em linguagem Java. Note que e...

Polimorfismo na Linguagem POO

 E o polimorfismo? Você sabe o que é e como funciona? O polimorfismo é um pilar da POO que é utilizado para que duas classes façam uso do mesmo método, implementando-o de formas diferentes. Ele permite que o programador desenvolva o código de forma ampla ao invés de perder muito tempo no desenvolvimento de códigos específicos. Ou seja, o polimorfismo permite que sistemas sejam escritos de forma a processar objetos que compartilham a mesma superclasse (classe já existente), como se eles fossem parte direta dela. Por exemplo, na superclasse Animal, estabelecemos o método “emitir o som do objeto animal”, ou seja, os objetos pato, cachorro e gato devem emitir um som ao comando do método, mas cada um fará isso de um jeito diferente. Agora, vejamos outro exemplo, onde foi desenvolvido um programa para o estudo que simula o modo de locomoção de animais com as classes Peixe, Anfíbio e Pássaro. Cada uma dessas classes é extensão da superclasse Animal, que possui o método “mover” e controla ...

Herança

Imagem
Outro pilar da POO é a herança. Assim como no mundo real, a herança na POO também diz respeito à ação de herdar. Ela nada mais é do que um objeto poder ser criado em uma outra classe, levando consigo todos os atributos já existentes em sua classe de origem. A herança é uma maneira de reutilizar o código já existente em uma nova classe. Desta forma, o código é aprimorado com novas e melhores capacidades. Ao utilizar este pilar, os programadores economizam tempo de desenvolvimento de um programa, já que eles reutilizam códigos já testados e aprovados. No organograma abaixo, mostra um exemplo de herança. Ao analisá-la, percebe-se que as classes herbívoro, carnívoro e onívoro podem herdar quaisquer atributos necessários da classe animal: tamanho, raça, cor etc. Da mesma forma, as classes leão, hiena, homem e coelho podem herdar atributos das classes herbívoro, carnívoro ou onívoro. Saiba Mais O conceito de herança é um dos conceitos fundamentais de POO.  Herança , na prática, significa...

Encapsulamento na Linguagem POO

Imagem
Agora que já entendemos o que é abstração, vamos aprender sobre o encapsulamento. Ao encapsular algo, você está colocando um objeto dentro de um recipiente, igual a um remédio de cápsula. Mas, afinal, qual é o propósito? O encapsulamento é uma das principais técnicas da programação orientada a objetos. Quando você encapsula um objeto, você está criando uma proteção e um padrão. Com isso, o propósito é de proteger o desenvolvedor do código e o código do desenvolvedor. Assim, quando você encapsula um objeto na POO, você está criando moldes padrão que fazem com que o conteúdo do objeto não importe. Você está determinando que o resultado será sempre o mesmo. Observe abaixo a definição dos conceitos: Conceito de encapsulamento É a ação de ocultar partes independentes da implementação, permitindo construir partes invisíveis ao mundo exterior. Ok, mas se no fim eu estou ocultando detalhes do código, como que ele vai funcionar? A POO permite que você converse com esta cápsula, trocando informa...

Abstração na Linguagem de POO

Imagem
Na POO, damos o nome de abstração para o processo de aproximar o mundo real do mundo da programação, sendo o seu objetivo, simplificar um problema difícil. Para isso, a abstração leva em conta os aspectos importantes de um determinado ponto de vista e desconsidera os aspectos restantes. Assim como representado na imagem, a abstração é a criação de uma classe abstrata, que é uma classe incompleta, como se fosse um quebra-cabeça. Assim, esta classe não permite a criação de instâncias e obriga a implementação de todos os métodos da classe assinados como ‘abstract’ Resumindo, a abstração se concentra apenas nas informações que são importantes para o seu propósito. Dessa forma, ela mantém suas classes o mais simples possível, concentrando-se apenas no que é importante para uma determinada finalidade. A abstração nada mais é do que você abstrair coisas, ou seja, quando você tem algo muito grande, mas não há necessidade de cadastrar todas as informações. Vamos entender melhor este conceito a ...

Comparação entre programação estruturada e a POO

Imagem
Neste tópico, iremos promover uma comparação entre a programação estrutura e a programação orientada a objetos, com o intuito de não só reforçar as características singulares de cada uma, mas também consolidar o que você já sabe em relação à elas. A primeira coisa que precisamos ter em mente é que os dois tipos de programação possuem suas vantagens e desvantagens de uso pelos desenvolvedores. Além disso, determinar qual a melhor programação a ser utilizada pode depender do tipo de programa que será desenvolvido. Então, preparado para aprender as diferenças entre elas? Observe a imagem a seguir! Perceba que na programação estruturada as funções são utilizadas globalmente na aplicação, já na orientada a objetos, essas funções são aplicadas aos dados de cada objeto. Agora, conhecendo os dois tipos de programação, observe que a programação estruturada, quando realizada corretamente, tem a probabilidade de ter o desempenho superior ao da orientada a objeto. Isso ocorre, pois ela é procedura...

Conceitos Fundamentais na Programação de Objetos

Imagem
Vamos agora compreender alguns conceitos! Vamos lá? Objeto: São elementos do mundo real para o mundo da programação. O objeto é criado a partir de uma classe. É algo que se visualiza, se utiliza e assume um papel no domínio do problema. Um exemplo disso, é um Fusca 1964. Atributos: São as características do objeto. Considerando o exemplo do Fusca 1964, os atributos deles são: ano de fabricação é 1964 e que ele tem um formato arredondado e o motor fica na parte traseira. Métodos: São os comportamentos do objeto. Ainda de acordo com o exemplo, o Fusca pode se locomover, transportando pessoas, cargas etc.  Classes: São os agrupamentos que descrevem todos os objetos de um único tipo. Por exemplo, o fusca pertence à classe dos carros. Não importa a sua marca ou ano. O que importa é que são objetos que se encaixam nesta classe, que serve como molde para a criação dos objetos. É na classe que são moldados os objetos que serão utilizados do programa a ser desenvolvido. Nas imagens apresent...

A Estrutura da Programação Orientada a Objetos

Agora que você compreendeu sobre a lógica por trás da programação estruturada, vamos entender como funciona a programação orientada? Como você viu, as duas são um modo de programação, mas cada uma possui a sua própria lógica de funcionamento. Enquanto a programação estruturada obedece a uma lógica de máquina, a programação orientada a objetos funciona de um modo mais similar ao raciocínio humano. Os seus códigos são organizados de acordo com objetos, e não processos, como no caso da programação estruturada. Para ajudá-lo a compreender melhor, convidamos você a assistir o vídeo que preparamos sobre como surgiu a POO. Confira o vídeo sobre a origem da programação orientada a objetos.   Perdeu algum detalhe? Confira o que foi abordado no vídeo. Olá! Agora que você já sabe como funciona e qual a estrutura tanto da programação estruturada quanto da programação orientada a objetos, chegou o momento de compreender como surgiu a programação orientada a objetos. Vamos lá? Ela foi desenvolvi...