MAC0413  Tópicos Avançados de Programação Orientada a Objetos

Por | Em

Até 2016 se chamou MAC0413 Tópicos de Programação Orientada a Objetos.

OBJETIVOS:  Discutir conceitos avançados de modelagem e desenvolvimento de software orientado a objetos para alunos que já possuam conhecimentos e experiência em programação orientada a objetos. Ao término da disciplina, o estudante será capaz de analisar, criticar e desenvolver complexos sistemas orientados a objetos de acordo com o estado da arte e o estado da prática na área de Orientação a Objetos.

PROGRAMA RESUMIDO:  Padrões de Projeto avançados. Escrita de Padrões OO. Teste de Software OO. Reflexão Computacional e Meta-Programação. Continuações, Traits e Mix-ins. Arquitetura de Software OO e Padrões Arquiteturais. Princípios SOLID.

PROGRAMA:  Linguagens fortemente tipadas vs. Linguagens dinâmicas. Como características avançadas como Reflexão Metaprogramação, Continuações e Traits facilitam o desenvolvimento de sistemas flexíveis, enxutos e robustos. Linguagens de Padrões e escrita de Padrões. Padrões arquiteturais, padrões de análise e outros tipos de padrões para projeto e desenvolvimento de software OO. Relação entre OO e desenvolvimento ágil de software: TDD, BDD e gestão de arquiteturas OO de alto nível. Estilos de codificação e beleza de código OO. Arcabouços Orientados a Objetos Princípios avançados de projeto orientado a objetos tais como os princípios SOLID Programação Orientada a Aspectos

RESPONSÁVEIS:  Alan Durham, Alfredo Goldman, Fabio Kon.

PRÉ-REQUISITOS:  MAC0218, MAC0316.

CARGA HORÁRIA SEMANAL E NÚMERO DE CRÉDITOS:  6 horas; 4 créditos-aula e 2 créditos-trabalho.

CRITÉRIO DE AVALIAÇÃO DA APRENDIZAGEM:  Método: o aluno será avaliado continuamente durante o semestre, tendo em vista as atividades apresentadas ao professor, monitores e seus pares na disciplina.
Critério: média ponderada dos tarefas realizados durante a disciplina e assiduidade às aulas e tarefas. Norma de recuperação: média ponderada da nota final e de provas e/ou tarefas de recuperação.

BIBLIOGRAFIA BÁSICA: 

  • F. Buschmann, K. Henney, D.C. Schmidt, Pattern Oriented Software Architecture Volume 5: On Patterns and Pattern Languages, 2007
  • M. Fowler, Refactoring - Improving the Design of Existing Code, Addison-Wesley, 2000.
  • M. Fowler, Analysis Patterns: Reusable Object Models, Addison-Wesley, 2000.
  • S. Metz, Practical Object-Oriented Design in Ruby, Addison-Wesley. 2013.
  • R. Olsen, Design Patterns in Ruby, Addison-Wesley. 2008.

OBSERVAÇÃO:  Disciplina optativa eletiva no currículo do BCC.

 

[Veja dados da disciplina no JúpiterWeb]