Disciplina Curricular
Desenvolvimento Centrado em Objetos DCObj
Licenciatura Bolonha em Engenharia Informática - 3_Plano 2015/16
Contextos
Grupo: 3_Plano 2015/16 > 1º Ciclo > 2º Ano
Período:
Peso
6.0 (para cálculo da média)
Objectivos
Familiarizar os alunos com os conceitos e a prática da análise, desenho e programação orientadas a objetos de forma a que se tornem capazes de analisar os requisitos de aplicações de alguma dimensão e de desenhar e produzir software que cumpra não só os requisitos para que foi concebido como seja também robusto, fácil de compreender e reutilizar, e suporte facilmente a evolução. Nomeadamente, no final do semestre, é esperado que: (i) o aluno seja fluente na utilização de notações standard de análise e desenho OO e saiba usar estas notações de forma efetiva na formulação de problemas e exploração de soluções, perceba os conceitos chaves da programação OO e saiba implementar em Java de forma fidedigna soluções de desenho expressas nestas notações; (ii) o aluno esteja familiarizado com um conjunto de padrões standard de desenho e de implementação.
Programa
Análise e Desenho Centrado em Objetos: Análise centrada em objetos: o modelo de domínio e o modelo de casos de uso. Desenho de sistemas de classes centrado na atribuição de responsabilidades: padrões de desenho para atribuição de responsabilidades, realização de casos de uso, modelo de classes. Vários padrões de desenho e princípios que contribuem para soluções mais preparadas para a mudança, para a divisão do trabalho, para a reutilização e para a robustez. A representação de soluções de desenho recorrendo a uma notação standard, o UML. Programação Centrada em Objetos: Noções chave da programação centrada em objetos e suporte destas noções na linguagem Java: composição, herança, redefinição, sobrecarga, polimorfismo, ligação dinâmica, abstração, contratos, subtipagem comportamental. Encapsulação e controlo de acesso. Modularização e suporte dado por packages e módulos. Reflexão e carregamento dinâmico de classes. Suporte à reutilização dado por genéricos, bibliotecas e frameworks.
Métodos de ensino e avaliação
Exame e dois projetos, um projeto de análise e desenho OO e outro de programação.