Eduardo Bezerra

Arquitetura e Padrões de Software (2018.2)

 

big ball of mud

 


Cursos


Local e horário das aulas

  • 6as-feiras, das 18:20h às 21:30h, no Pavilhão de Informática, lab. 04

Objetivos

Apresentar uma introdução aos conceitos, modelos, métodos, técnicas relacionados a arquiteturas e padrões de software.


Ementa

Introdução aos conceitos de padrão de software e arquitetura de software; padrões para organizar a arquitetura de aplicações corporativas, padrões de projeto (design patterns): GoF; JEE; padrões da abordagem Domain Driven Design (DDD).

Veja também o plano de ensino da disciplina.


Moodle

Todos os alunos regularmente inscritos estão adicionados à disciplina homônima no Moodle, para que possam receber avisos importantes (dia/horário das provas, dúvidas gerais, submissões dos trabalhos, etc).


Aulas

Veja também o plano de curso da disciplina e o calendário acadêmico das graduações do CEFET/RJ.

Aula Data Comentário Leitura/Tarefa
1 03/ago Apresentação da disciplina (APS00)
Arquitetura de aplicações corporativas (APS01a)
Who needs an architect
The Big Ball of Mud…
Creating Business Value…
Architecture without architects (video)
2 17/ago Camadas típicas de uma aplicação corporativa (APS01b)
Organização da camada da aplicação (APS02)
SCA (github)
3 24/ago Padrões para organização da lógica do domínio (APS03)
Introdução ao DDD (APS04)
Padrões táticos do DDD (APS05)
Estudo de caso: biblioteca
PeriodoLetivo.java
Service Layer
How essential is it to make a service layer?
Services in Domain-Driven Design
DDD: Tactical Design Patterns
Livro DDD – capítulo 1
4 31/ago Princípios de projeto OO (APS06), Venda-ItemVenda, ValidadorQuantidadeCreditosService, Isbn Validador ISBN
Repositories in App or Domain Services
5 14/set Revisão: API Reflection de Java; Anotações em Java.
Inversão de Controle e Injeção de Dependências (APS07)
Contêiner IoC do Spring (APS08)
SOLID software design classes
JUnit + maven
Princípio da Inversão de Dependência
6 21/set Organização da lógica de acesso a dados (APS09)
Spring Data JPA (APS09.a)
Tutorial: Spring Data JPA
Simple Spring Data JPA Example
Repository vs DAO
7 28/set Revisão: JUnit e testes automatizados
Organização da lógica da apresentação (APS10)
Spring MVC (APS10.a)
Tutorial: Spring MVC
Serving Web Content with Spring MVC
8 05/out P1 – Primeira Avaliação Semestral
9 19/out GoF – visão geral (APS11); GoF – parte 1 (APS12), DemoAdapter.zip, DemoTemplateMethod.zip
10 26/out GoF – parte 2 (APS13), FastFoodDecorator, DemoObserver.zip
11 09/nov GoF – parte 3 (APS14), Exemplo (Commmand): stackoverflow formulário


Trabalhos práticos

  • T1. Entrega: 16/setembro 20/setembro.
  • T2. Entrega: 18/novembro

Ferramentas, bibliotecas e frameworks utilizados

Sites relevantes

Autores

Livros, artigos e mais informações relevantes


Back to top