Prévia do material em texto
Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZObjetivos Módulo 1 Orientação a objetos Definir os conceitos gerais da orientação a objetos. Acessar módulo Módulo 2 Orientação a objetos na linguagem Python Descrever os conceitos básicos da programação orientada a objetos na linguagem Python. Acessar módulo Módulo 3 Orientação a objetos como herança e polimor�smo d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Comparar a implementação dos conceitos orientados a objetos aplicados a Python com outras linguagens orientadas a objetos existentes no mercado. Acessar módulo O paradigma de programação orientado a objetos é largamente utilizado para o desenvolvimento de software devido à sua implementação se aproximar dos conceitos do mundo real. Essa proximidade facilita a manutenção dos softwares orientados a objetos. A linguagem Python implementa os conceitos do paradigma orientado a objetos. Devido à sua sintaxe simples e robusta, ela é uma ferramenta poderosa para a implementação de sistemas orientados a objetos. Neste conteúdo, apresentaremos os conceitos da orientação a objetos, demonstrando como implementá-los em Python. Também faremos uma comparação dele com as linguagens Java e C++ - em relação às principais características da orientação a objetos. Introdução d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZO sistema final de compartilhamento de vídeos deve permitir uma interação entre os diversos usuários conectados, deve possibilitar que novos vídeos sejam inseridos na plataforma, cada vídeo com suas próprias características. Os usuários deverão poder criar coleções que podem ser adicionadas a outras coleções de outros usuários, permitindo, dessa maneira, que os diversos indicadores advindos do uso do sistema sejam analisados posteriormente. O sistema deverá ainda prever o cenário de instituições compostas por filiais, de maneira que esses vídeos possam ser acessados por funcionários de outras localidades. A segurança deve ser levada em conta, bem como a possibilidade de poder configurar vídeos de maneira que apenas determinadas pessoas ou grupos tenham acesso a eles. Após a leitura do caso, é hora de aplicar seus conhecimentos! Vamos ligar esses pontos? Questão 1 Como foi possível perceber, nem sempre é fácil decidir qual caminho escolher quando o assunto é desenvolvimento de sistemas, entretanto orientação a objetos tem sido uma escolha utilizada por diversas companhias. Pensando em orientação a objetos, quais vantagens podemos destacar? A Permite criar softwares que podem ser acessados por empresas de grande porte. B Possibilita utilizar objetos com características próprias, comportamentos, interações, reusabilidade e escalabilidade. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZexistentes no mercado Comparar a implementação dos conceitos orientados a objetos aplicados a Python com outras linguagens orientadas a objetos existentes no mercado. Acessar módulo O paradigma de programação orientado a objetos é largamente utilizado para o desenvolvimento de software devido à sua implementação se aproximar dos conceitos do mundo real. Essa proximidade facilita a manutenção dos softwares orientados a objetos. A linguagem Python implementa os conceitos do paradigma orientado a objetos. Devido à sua sintaxe simples e robusta, ela é uma ferramenta poderosa para a implementação de sistemas orientados a objetos. Neste conteúdo, apresentaremos os conceitos da orientação a objetos, demonstrando como implementá-los em Python. Também faremos uma comparação dele com as linguagens Java e C++ - em relação às principais características da orientação a objetos. Introdução d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Ligando os pontos Você já ouviu falar nos processos de desenvolvimento de software? Já it õ t t d i õ i t t ? Orientação a objetos Ao final deste módulo, você será capaz de definir os conceitos gerais da orientação a objetos. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Python orientado a objeto Colaboração Prof. Marcelo Nascimento Costa Prof. Kleber de Aguiar Descrição Introdução aos conceitos de: orientação a objetos; classes e encapsulamento; herança e polimorfismo; construtores; atributos e métodos; implementação de herança; implementação de polimorfismo; classes abstratas; tratamento de exceções; Python e linguagens orientado a objetos (OO). Propósito Compreender o desenvolvimento de software orientado a objetos utilizando uma linguagem de programação, como a do Python, que tem grande aceitação no meio comercial e acadêmico. Entender os conceitos e os pilares da orientação a objetos. Saber contextualizar o Python entre as outras linguagens tradicionais orientadas a objetos, como Java e C++. Preparação d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Ligando os pontos Orientação a objetos Ao final deste módulo, você será capaz de definir os conceitos gerais da orientação a objetos. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Módulo 4 Orientação a objetos aplicados a Python e outras existentes no mercado Comparar a implementação dos conceitos orientados a objetos aplicados a Python com outras linguagens orientadas a objetos existentes no mercado. Acessar módulo O paradigma de programação orientado a objetos é largamente utilizado para o desenvolvimento de software devido à sua implementação se aproximar dos conceitos do mundo real. Essa proximidade facilita a manutenção dos softwares orientados a objetos. A linguagem Python implementa os conceitos do paradigma orientado a objetos. Devido à sua sintaxe simples e robusta, ela é uma ferramenta poderosa para a implementação de sistemas orientados a objetos. Neste conteúdo, apresentaremos os conceitos da orientação a Introdução d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Atributos São propriedades do mundo real que descrevem um objeto. Cada objeto possui as respectivas propriedades desse mundo, as quais, por sua vez, possuem valores. A orientação a objetos define as propriedades como atributos. Já o conjunto de valores dos atributos de um objeto define o seu estado naquele momento (RUMBAUGH, 1994). Observe a seguir a diferença entre os atributos de duas mulheres: Exemplo As características de uma pessoa para um sistema acadêmico podem ser a formação ou o nome do pai e o da mãe, enquanto as de um indivíduo, para o sistema de controle de uma academia, são a altura e o peso. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Questão 2 Nos dias atuais, existem diversas linguagens de programação disponíveis no mercado e, a cada dia que passa, outras surgem. O que devemos considerar ao escolher uma determinada linguagem de programação para ser utilizada em um projeto que se pretende fazer o uso de orientação a objetos? C Permite definir a arquitetura a ser utilizada durante o desenvolvimento de software. D Possui fácil compreensão e uma modelagem baseada em banco de dados. E O fato de estarmos rodeados por objetos no dia a dia e podermos utilizá-los diretamente no software a ser desenvolvido. Parabéns! A alternativa B está correta. O paradigma de orientação a objetos, comoo nome sugere, visa trabalhar a organização dos elementos a serem desenvolvidos de maneira independentes, com características próprias, comportamentos, possibilidade de realizar interação entre outros objetos abstraídos e, dessa maneira, facilita a reusabilidade em diversos pontos da aplicação, facilitando ainda a escalabilidade do software. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZTais ideias também são fortemente influenciadas pelas linguagens de programação disponíveis. A abordagem baseada em objetos permite que os mesmos conceitos e a mesma notação sejam usados durante todo o processo de desenvolvimento de software, ou seja, não existem conceitos de análise de projetos diferentes daqueles relativos à implementação dos projetos. Essa abordagem procura refletir os problemas do mundo real por meio da interação de objetos modelados computacionalmente. Portanto, o desenvolvedor do software não necessita realizar traduções para outra notação em cada etapa do desenvolvimento de um projeto de software (COSTA, 2015). O software é organizado como uma coleção de objetos separados que incorpora tanto a estrutura quanto o comportamento dos dados. Isso contrasta com a programação convencional, segundo a qual a estrutura e o comportamento dos dados têm pouca vinculação entre si. Os modelos baseados em objetos correspondem mais aproximadamente ao mundo real. Em consequência disso, eles são mais adaptáveis às modificações e às evoluções dos sistemas. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ 1 O paradigma de programação orientado a objetos é largamente utilizado para o desenvolvimento de software devido à sua implementação se aproximar dos conceitos do mundo real. Essa proximidade facilita a manutenção dos softwares orientados a objetos. A linguagem Python implementa os conceitos do paradigma orientado a objetos. Devido à sua sintaxe simples e robusta, ela é uma ferramenta poderosa para a implementação de sistemas orientados a objetos. Neste conteúdo, apresentaremos os conceitos da orientação a objetos, demonstrando como implementá-los em Python. Também faremos uma comparação dele com as linguagens Java e C++ - em relação às principais características da orientação a objetos. Orientação a objetos Ao final deste módulo, você será capaz de definir os conceitos gerais da orientação a objetos. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZe polimorfismo. Acessar módulo Módulo 4 Orientação a objetos aplicados a Python e outras existentes no mercado Comparar a implementação dos conceitos orientados a objetos aplicados a Python com outras linguagens orientadas a objetos existentes no mercado. Acessar módulo O paradigma de programação orientado a objetos é largamente utilizado para o desenvolvimento de software devido à sua implementação se aproximar dos conceitos do mundo real. Essa proximidade facilita a manutenção dos softwares orientados a objetos. Introdução d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Ligando os pontos Você já ouviu falar nos processos de desenvolvimento de software? Já passou por situações em que teve que tomar decisões importantes? Quando se pensa em desenvolvimento de software, o profissional responsável por essa tarefa logo se depara com diversas escolhas que deve tomar em seu dia a dia Existem diversas situações que o colocam Ao final deste módulo, você será capaz de definir os conceitos gerais da orientação a objetos. d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Objetivos Módulo 1 Orientação a objetos Definir os conceitos gerais da orientação a objetos. Acessar módulo Módulo 2 Orientação a objetos na linguagem Python Antes de iniciar a leitura deste conteúdo, é necessário possuir uma versão do interpretador Python e o ambiente de desenvolvimento PyCharm (ou outro ambiente que suporte o desenvolvimento na linguagem Python). d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Objetivos Módulo 1 Orientação a objetos Definir os conceitos gerais da orientação a objetos. comercial e acadêmico. Entender os conceitos e os pilares da orientação a objetos. Saber contextualizar o Python entre as outras linguagens tradicionais orientadas a objetos, como Java e C++. Preparação Para este módulo, é necessário conhecimentos de programação em linguagem Python, incluindo a modularização e a utilização de bibliotecas em Python. Antes de iniciar a leitura deste conteúdo, é necessário possuir uma versão do interpretador Python e o ambiente de desenvolvimento PyCharm (ou outro ambiente que suporte o desenvolvimento na linguagem Python). d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Ligando os pontos Você já ouviu falar nos processos de desenvolvimento de software? Já passou por situações em que teve que tomar decisões importantes? Quando se pensa em desenvolvimento de software, o profissional responsável por essa tarefa logo se depara com diversas escolhas que deve tomar em seu dia a dia. Existem diversas situações que o colocam nessa posição. Para melhor nos situarmos e entendermos sobre o assunto, vamos analisar um cenário fictício de uma empresa de desenvolvimento de software. Você é um desenvolvedor de software da empresa em questão e iniciará o desenvolvimento de um projeto complexo voltado para d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto Ciência de Dados e Big Data Analytics L Olá LUCIANO VAZ Python orientado a objeto Colaboração Prof. Marcelo Nascimento Costa Prof. Kleber de Aguiar Descrição Introdução aos conceitos de: orientação a objetos; classes e encapsulamento; herança e polimorfismo; construtores; atributos e métodos; implementação de herança; implementação de polimorfismo; classes abstratas; tratamento de exceções; Python e linguagens orientado a objetos (OO). Propósito Compreender o desenvolvimento de software orientado a objetos utilizando uma linguagem de programação, como a do Python, que tem grande aceitação no meio comercial e acadêmico. Entender os conceitos e os pilares da orientação a objetos. Saber contextualizar o Python entre as outras linguagens tradicionais orientadas a objetos, como Java e C++. Preparação d VisualizadoVoltar para disciplina Tema 1� Python Orientado a Objeto