Buscar

Prof. Wellington Rodrigo Monteiro Linguagem de Programação Aula 3 Conversa Inicial Transpondo conceitos da vida real em código Programação Orientad...

Prof. Wellington Rodrigo Monteiro Linguagem de Programação Aula 3 Conversa Inicial Transpondo conceitos da vida real em código Programação Orientada a Objetos (POO) Mudando paradigmas Um problema para ser resolvido pela Programação Orientada a Objetos Método até agora: programação estruturada Receita de bolo Funções Estruturas de seleção Estruturas de repetição Entrada e saída de dados Programação estruturada Segurança Confiança Sistemas corporativos Internet Banking E-commerce Sistemas contábeis Sistemas corporativos (ERPs) Programação Orientada a Objetos 2 Noções de Programação Orientada a Objetos Unified Modeling Language (UML) Programação Orientada a Objetos (POO) Structured Query Language (SQL) Programação Orientada a Objetos "Coisas" da vida real Dois objetos não ocupam o mesmo lugar ao mesmo tempo Estados Características Objetos Estados Variáveis: atributos Comportamentos Ações: funções (métodos) Objetos "Manual" (blueprint) para se criarem objetos Receita de bolo, não o bolo Planta da casa, não a casa Instância de classe: objeto Classes Classe "Cachorro" Métodos Latir Comer Dormir Exemplo Atributos Cor Nome Brinquedo favorito 3 Objeto "Kora": instância de "Cachorro" Objeto "Pippoca": instância de "Cachorro" Objeto "Dexter": instância de "Cachorro" Herança de classes Classes especializadas Herdam métodos e atributos Heranças Carro Caminhonete Furgão Minivan Heranças Bicicleta BMX Bicicleta de Carga Bicicleta de Pista Residência Sobrado Casa de Praia Apartamento Heranças Cliente de Internet Banking Conta simples Conta premium Conta empresarial Classe "Cachorro" Métodos Latir Comer Dormir Atributos Cor Nome Brinquedo favorito Exemplo Classe "Cão Farejador" Métodos Farejar Sentar Atributos Tempo de Treinamento Aeroporto Raça Classes podem usar interfaces Interfaces listam os métodos que uma classe que a usa deve ter Interfaces não implementam métodos Interfaces 4 Classes e Objetos em Python class [nome da classe] Atributos Métodos self Criando uma classe class Bolo: peso = 0 def atribuir_peso(self, peso_a_atribuir): self.peso = peso_a_atribuir bolo_aniversario = Bolo() print(bolo_aniversario.peso) bolo_aniversario.atribuir_peso(2) print(bolo_aniversario.peso) Exemplo def __init__ Inicializando uma classe class Bolo: peso = 0 def __init__(self, peso_inicial=0): self.peso = peso_inicial def atribuir_peso(self, peso_a_atribuir): self.peso = peso_a_atribuir bolo_aniversario = Bolo() print(bolo_aniversario.peso) bolo_aniversario.atribuir_peso(2) print(bolo_aniversario.peso) Exemplo Polimorfismo 5 Implementações diferentes do mesmo método Parâmetros diferentes Resultados diferentes Polimorfismo Veículo: estacionar Carro: estacionar Moto: estacionar Caminhão: estacionar Bicicleta: estacionar Polimorfismo Closures e Decorators Funções dentro de funções Redução de casos de variáveis globais Encapsulamento e isolamento da lógica Encapsulamento Funções que: Ficam dentro de outras funções e Usam variáveis atribuídas a elas Closures def calcular_volume_area_base(area_base): constante = 3 def calcular_volume_piramide(altura): return (area_base * altura)/constante return calcular_volume_piramide Closures Função interna 6 def calcular_volume_area_base(area_base): constante = 3 def calcular_volume_piramide(altura): return (area_base * altura)/constante return calcular_volume_piramide # closure piramide = calcular_volume_area_base(15) # area base piramide(2) # altura Closures Closures que podem ser inseridas no código sem alterações estruturais Uso do "@" @staticmethod @classmethod Decorator class Bolo: peso = 0 def __init__(self, peso_inicial=0): self.peso = peso_inicial def atribuir_peso(self, peso_a_atribuir): self.peso = peso_a_atribuir @staticmethod def calcular_porcoes_por_ovo(numero_ovos): return round(numero_ovos * 3) Decorators


Essa pergunta também está no material:

Aula 3 - Slides
6 pág.

Linguagem de Programação. Centro Universitário UNINTERCentro Universitário UNINTER

💡 1 Resposta

User badge image

Ed Verified user icon

Desculpe, mas sua pergunta está incompleta. Você precisa publicar uma nova pergunta.

0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais