Prévia do material em texto
Introdução à Engenharia de Software • • Engenharia de Software é a disciplina que aplica princípios de engenharia ao desenvolvimento de software. • • Envolve métodos, ferramentas e processos para garantir qualidade e eficiência. • • Objetivo: produzir software confiável, escalável e de fácil manutenção. Ciclo de Vida do Software • • Fases principais: Requisitos, Análise, Projeto, Implementação, Testes e Manutenção. • • Cada fase possui entregas específicas e documentação. • • Modelos comuns: Cascata, Incremental e Ágil. Importância dos Padrões de Projeto • • Design Patterns são soluções reutilizáveis para problemas recorrentes no design de software. • • Melhoram a comunicação entre desenvolvedores e promovem boas práticas. • • Facilitam a manutenção e a escalabilidade do sistema. Tipos de Padrões de Projeto • • Criacionais: lidam com a criação de objetos (ex: Singleton, Factory Method). • • Estruturais: tratam da composição de classes e objetos (ex: Adapter, Composite). • • Comportamentais: lidam com a interação entre objetos (ex: Observer, Strategy). Exemplos Práticos de Padrões • • Singleton: garante que apenas uma instância de uma classe exista. • • Observer: notifica automaticamente objetos dependentes quando há mudanças. • • Strategy: permite alterar o comportamento do algoritmo em tempo de execução. Boas Práticas e Tendências • • Uso de princípios SOLID e Clean Code. • • Adoção de arquiteturas modulares e desacopladas. • • Integração com metodologias ágeis e DevOps para entrega contínua.