Alessandro Olicheski, Carlos Eduardo, Fabrício José,
Vinicius Rosendo e Vinicius de Moura. Programação estruturada • Base para todas as linguagens de programação: • C, Pascal, Cobol -> Python, C++, C#, etc. • Execução: • Scripts / Executáveis. • Problemas específicos: • Soluções simples e rápidas. Programação estruturada • Princípios básicos: • Sequência: • Tudo é executado linha após linha. • Seleção: • Partes opcionais de código. • Iteração/Repetição: • Repetir um mesmo trecho de código. • Modularidade: • Tudo é Separado em Módulos. Programação estruturada Programação orientada a objetos (POO) • Linguagens orientadas a objetos • Java, Python, Ruby, C++, C#, PHP, etc. • A vida real dentro de códigos: • Tudo gira entorno de objetos. • Problemas Grandes: • Soluções Complexas e de Fácil manutenção. • Flexível e escalável: • Se mexer, não quebra. Programação orientada a objetos (POO) • Princípios básicos: • Classes e objetos: • Forma e o bolo. • Herança: • Padrão e modificações. • Polimorfismo: • “Copia, só não faz igual”. • Abstração: • Conceitos de Objetos. • Encapsulamento: • Segurança de informações. Programação orientada a objetos (POO) • Classes e Objetos: • Atributos: • Informações que são usadas pelos objetos; • Nome, idade, gênero, etc. • Métodos: • Ações realizadas pelos objetos; • Envelhecer, andar, etc. • Construtores e destrutores: • Nascer, viver e morrer. Programação orientada a objetos (POO) • Herança: • Bases e melhorias; • Genéricos e específicos. • Polimorfismo: • “Igual mas diferente”. • Abstração: • Conceitos estruturais; • Base sólida para possíveis melhorias. Programação orientada a objetos (POO) • Abstração: • Classes e métodos abstratos: • Base conceitual; • Ex. Carro, casa, conta; • Estrutura pra todo o resto. • Classes e métodos finais: • Resultado de todo o resto; • Ex. Corsa, conta corrente ou conta poupança; • Não pode ser a base. Programação orientada a objetos (POO) • Encapsulamento: • Responsabilidade: • Classes sobre atributos; • Sem acessos diretos; • Métodos acessam atributos. • Acessos: • Public; • Protected; • Private. Programação orientada a objetos (POO) Programação estruturada x POO • Programação estruturada: • Simples; • Maior controle do fluxo do código; • Fácil entendimento. • Programação orientada a objetos: • Reutilização do código; • Organização; • Complexo. Perguntas?