Programação de Computadores II

Horário

Segunda e Quarta, às 20:10

Slack

Todo material de aula será postado no Slack. Para acessar: http://bit.ly/2poykZh

Objetivo

Introduzir os fundamentos de orientação a objetos utilizando como base a plataforma Java.

Ementa

Conceitos básicos de orientação a objetos. Teste de software. UML. Conceitos avançados de Java.

Bibliografia

  • CARVALHO, Thiago leite. Orientação a Objetos. Orientação a Objetos edição. Casa do código, 2017.
  • Silveira, Paulo; TURINI, Rodrigo. Java 8 Prático. Casa do código, 2015.

Material extra

Avaliação

  1. Exercícios em sala: 6 pontos (1pt cada exercício)
  2. Prova do primeiro bimestre: 4 pontos
  3. Projeto de discipina (PD): 10 pontos
  4. Atividade extra (AE): 2 pontos

Projeto de disciplina (PD)

No projeto de disciplina, o aluno deverá abordar na prática alguns dos conceitos vistos em sala de aula. Um exemplo de PD: Desenvolver um aplicativo web que possa ser utilizado por um cliente real (por exemplo, uma academia).

O projeto deve ter no minimo 6 classes (uma delas deve ser abstrata) e, pelo menos, uma interface. Ao menos, 20 métodos de testes precisam ser escritos e devem estar passando.

Além disso, é necessário empregar todos os conceitos vistos em sala (herança, polimorfismo, tratamento de exceção, tipos genéricos, etc). Cada entrega é avaliativa. Ao total, serão 7 entregas, cada uma valendo 1.5 (10.5 pontos no total). Entrega final: 25/06. Importante: nos dias 18 e 20 de junho nós não teremos aula; Logo, não serão contabilizadas entregas.

Exemplos de projetos:

  • Gerenciador de finanças (calcula o dinheiro que entra e sai, etc)
  • Cliente do twitter (dado um usuário, leia os tweets, escreva novos tweets, etc)
  • Jogo da forca
  • Agenda eletronica (cadastra pessoa, envia email, etc)

Projetos: https://docs.google.com/spreadsheets/d/1fRga6R_skvfEaRTVVe55nY89Fz5HaGp_ro48QtHCayY/edit?usp=sharing

Atividade Extra (AE)

AE: Alunos interessados em fazer a atividade extra devem entrar em contato com o professor, avisando o interesse, até o dia 16/04. As instruções da atividade extra será passada para o aluno interessado. A atividade extra é individual.

Nota final

Soma de todas as atividades dividido por dois.

Cronograma

Passível de alterações.

# Data Conteúdo de Aula
1 19/03 Introdução a tecnologia Java
2 21/03 Entendendo Classes e Objetos
3 26/03 Exercícios (em sala)
3 28/03 Exercícios (em sala)
5 02/04 Testes de Unidade com JUnit
6 04/04 Exercícios (em sala)
7 09/04 Utilizando Herança em Java
8 11/04 NAO TEREMOS AULA
8 16/04 Encapsulamento e Polimorfismo
9 18/04 Exercícios (em sala)
10 23/04 GREVE DOS RODOVIARIOS
11 25/04 Revisão para Prova
12 30/04 Prova 1
12 02/05 REVISAO DE PROVA
13 07/05 NAO TIVEMOS AULA (CHUVA)
14 09/05 Tratamentos de erros em java (Gilson)
15 14/05 Exercícios (em sala) (Gilson)
16 16/05 Diagrama de classe
17 21/05 Exercícios (em sala)
17 23/05 E1: Diagrama inicial do projeto
18 28/05 E2: Diagrama final do projeto
19 30/05 Tipos Genéricos (Gilson)
20 04/06 E3: Polimorfismo
20 06/06 E4: Herança
20 11/06 E5: Tratamento de erros
20 13/06 E6: Tipos Genéricos
20 18/06 NAO TEREMOS AULA
20 20/06 NAO TEREMOS AULA
20 25/06 E7: Entrega final e apresentação
20 27/06 E7: Entrega final e apresentação
28 02/07 Atividade Extra

Entrega atrasada

Entregas de trabalhos após o prazo serão aceitas mas os pontos referentes não serão contabilizados.

Política de plágio

Todos os trabalhos (a não ser que indicados explicitamentes) devem ser feitos de forma individual. O que você entregar deve ser fruto do seu trabalho. Alunos são permitidos e encorajados para discutir os trabalhos e projetos com outros alunos. Alunos não são permitidos copiar solução ou parte de solução de colegas. Na presença de plágio, os alunos envolvidos não receberão pontos da atividade em questão.