Difference between revisions of "Linguagem de Programação Orientada a Objetos I (FAZAG 2010.2)"
From AdonaiMedrado.Pro.Br
(→Aula do dia 16/10/2010 (3,5 h/a)) |
|||
(96 intermediate revisions by the same user not shown) | |||
Line 3: | Line 3: | ||
== Links sugeridos == | == Links sugeridos == | ||
+ | *Linguagem Java | ||
+ | **[http://www.oracle.com/technetwork/java/javase/downloads/jdk6-jsp-136632.html Java SE Downloads]. | ||
+ | *Site para treinamento | ||
+ | **[http://br.spoj.pl/ SPOJ Brasil]. | ||
+ | **[http://olimpiada.ic.unicamp.br/pratique Olimpíada Brasileira de Informática]. | ||
+ | **[http://train.usaco.org/usacogate USACO TRAINING PROGRAM]. | ||
+ | **[http://acmicpc-live-archive.uva.es/nuevoportal/ The 2000's ACM-ICPC Live Archive] ou [http://cii-judge.baylor.edu/ The 2000's ACM-ICPC Live Archive]. | ||
+ | **[http://www.topcoder.com/tc?module=Static&d1=match_editorials&d2=archive TopCoder Statistics]. | ||
+ | *Livro de problemas: | ||
+ | **[http://www.adonaimedrado.pro.br/documentos/53_Problemas_de_Programacao.pdf 53 Problemas de Programação]. | ||
== Avaliações == | == Avaliações == | ||
+ | Conforme padrão pedagógico FAZAG: | ||
+ | *AVI: Trabalho em Grupo (4,0 pontos) + Prova (6,0 pontos). | ||
+ | *AVII: Trabalho Individual (6,0 pontos) + Prova (4,0 pontos). | ||
== Especificação de trabalho == | == Especificação de trabalho == | ||
+ | *[[Trabalho em Grupo: Linguagem de Programação Orientada a Objetos I (FAZAG 2010.2)]]. | ||
+ | *[[Trabalho Individual: Linguagem de Programação Orientada a Objetos I (FAZAG 2010.2)]]. | ||
== Cronograma == | == Cronograma == | ||
=== Aula do dia 14/08/2010 (3,5 h/a) === | === Aula do dia 14/08/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Apresentação da disciplina, professor e alunos. | ||
+ | :Proposta do método de trabalho. | ||
+ | ;Assuntos | ||
+ | :Conceitos básicos | ||
+ | ::Estrutura básica do código Java. | ||
+ | ::Tipos primitivos. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html byte]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html short]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html int]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html long]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html float]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html double]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html boolean]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html char]. | ||
+ | ::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/operators.html Operações entre os tipos básicos]. | ||
+ | ::Controle fluxo(Condicionais e laços) | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/if.html if-then/if-then-else]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/for.html for]. | ||
+ | ;Links sugeridos | ||
+ | :[http://download.oracle.com/javase/tutorial/getStarted/cupojava/win32.html Hello World!" for Microsoft Windows]. | ||
+ | :[http://download.oracle.com/javase/tutorial/getStarted/cupojava/unix.html Hello World!" for Solaris OS and Linux]. | ||
+ | :[http://download.oracle.com/javase/tutorial/getStarted/application/index.html A Closer Look at the "Hello World!" Application]. | ||
+ | ;Códigos exemplo | ||
+ | :[[Java: Programa Eco]]. | ||
+ | :[[Java: Soma de dois números inteiros]]. | ||
+ | :[[Java: Divisão de dois números inteiros]]. | ||
+ | ;Problemas | ||
+ | :[[Problema da soma]]. | ||
+ | :[[Problema da média]]. | ||
+ | :[[Problema do número espelho]]. | ||
+ | |||
=== Aula do dia 21/08/2010 (3,5 h/a) === | === Aula do dia 21/08/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Problemas anteriores. | ||
+ | |||
=== Aula do dia 28/08/2010 (3,5 h/a) === | === Aula do dia 28/08/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :O que eu aprendi na aula passada? | ||
+ | ;Assuntos | ||
+ | :Conceitos básicos | ||
+ | ::Função/Método. | ||
+ | ::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html Arrays]. | ||
+ | ::[http://download-llnw.oracle.com/javase/tutorial/java/data/strings.html Strings]. | ||
+ | ::Controle fluxo (Condicionais e laços) | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/switch.html switch]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/while.html while]. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/branch.html break]. | ||
+ | ;Links sugeridos | ||
+ | :[http://download-llnw.oracle.com/javase/tutorial/java/nutsandbolts/QandE/questions_flow.html Questions and Exercises: Control Flow Statements]. | ||
+ | ;Códigos exemplo | ||
+ | :[[Java: Acumulador]]. | ||
+ | :[[Java: Número e seus nomes]]. | ||
+ | ;Problemas | ||
+ | :[[Problema da sequência de Fibonacci]]. | ||
+ | :[[Problema do quadrado gêmeo das partes]]. | ||
+ | :[[Problema do giro da palavra]]. | ||
+ | |||
=== Aula do dia 04/09/2010 (3,5 h/a) === | === Aula do dia 04/09/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Exercícios anteriores. | ||
+ | ;Links sugeridos | ||
+ | :[http://pt.wikipedia.org/wiki/Java_(linguagem_de_programa%C3%A7%C3%A3o) Java (linguagem de programação)]. | ||
+ | :[http://www.dca.fee.unicamp.br/cursos/POOCPP/node3.html Introdução a Orientação a Objetos]. | ||
+ | ;Trabalhos de outros alunos | ||
+ | :'''Atenção''': o material abaixo '''não''' deve ser tomado como modelo e pode conter erros (veja '''alguns''' dos pontos indicados para correção [http://www.adonaimedrado.pro.br/wiki/index.php?title=Linguagens_para_Aplica%C3%A7%C3%A3o_Comercial_(UFBA_2009.1)#Resultados_parciais aqui]). | ||
+ | :[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_1_DOCUMENTO.pdf Trabalho Semestral - Descrição de Tecnologias Utilizadas (a partir da página 11)]. | ||
+ | :[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_2_DOCUMENTO.pdf Trabalho Semestral: Java Server Faces (a partir da página 14)]. | ||
+ | :[http://www.adonaimedrado.pro.br/wiki/documentos/alunos/LAC_2009_1_EQUIPE_5_DOCUMENTO.pdf Java e RichFaces (a partir da página 5)]. | ||
+ | |||
=== Aula do dia 11/09/2010 (3,5 h/a) === | === Aula do dia 11/09/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Excercícios anteriores e dúvidas dos trabalhos. | ||
+ | |||
=== Aula do dia 18/09/2010 (3,5 h/a) === | === Aula do dia 18/09/2010 (3,5 h/a) === | ||
;Atividade | ;Atividade | ||
Line 20: | Line 105: | ||
=== Aula do dia 25/09/2010 (3,5 h/a) === | === Aula do dia 25/09/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Continuação dos Trabalhos em Grupo AVI. | ||
+ | |||
=== Aula do dia 02/10/2010 (3,5 h/a) === | === Aula do dia 02/10/2010 (3,5 h/a) === | ||
− | === Aula do dia 09/10/2010 ( | + | Não houve aula (eleições). |
+ | |||
+ | === Aula do dia 09/10/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Continuação dos Trabalhos em Grupo AVI. | ||
+ | |||
+ | === Aula do dia 16/10/2010 (3,5 h/a) === | ||
;Atividade | ;Atividade | ||
:Prova da AVI | :Prova da AVI | ||
+ | ::[[Problema das apaixonadas por moto]]. | ||
+ | :::[[Solução: Problema das apaixonadas por moto]]. | ||
+ | ::[[Problema da caneta do presidenciável]]. | ||
+ | :::[[Solução: Problema da caneta do presidenciável]] | ||
+ | ::[[Problema da rotação dos algarismo do número inteiro]]. | ||
+ | :::[[Solução: Problema da rotação dos algarismo do número inteiro]]. | ||
− | |||
− | |||
=== Aula do dia 23/10/2010 (3,5 h/a) === | === Aula do dia 23/10/2010 (3,5 h/a) === | ||
+ | ;Assuntos | ||
+ | :Princípios da orientação a objetos (OO) e de OO em Java. | ||
+ | ::Classes. | ||
+ | :::[http://download-llnw.oracle.com/javase/tutorial/java/IandI/abstract.html Classe abstrata]. | ||
+ | ::[http://download-llnw.oracle.com/javase/tutorial/java/IandI/createinterface.html Interface]. | ||
+ | ::[http://download-llnw.oracle.com/javase/tutorial/java/IandI/subclasses.html Herança]. | ||
+ | ::[http://download-llnw.oracle.com/javase/tutorial/java/IandI/polymorphism.html Polimorfismo de classe]. | ||
+ | ;Links sugeridos | ||
+ | :[http://pt.thefreedictionary.com/classe Classe]. | ||
+ | :[http://www.dca.fee.unicamp.br/cursos/PooJava/classes/conceito.html O que é uma classe]. | ||
+ | ;Material utilizado | ||
+ | :[http://www.adonaimedrado.pro.br/documentos/Programacao_Orientada_a_Objeto_-_Introducao.pdf Programação Orientada a Objeto - Introdução]. | ||
+ | |||
=== Aula do dia 30/10/2010 (3,5 h/a) === | === Aula do dia 30/10/2010 (3,5 h/a) === | ||
+ | Não houve aula (eleições). | ||
+ | |||
=== Aula do dia 06/11/2010 (3,5 h/a) === | === Aula do dia 06/11/2010 (3,5 h/a) === | ||
− | ; | + | ;Atividades |
− | : | + | :Exercício de orientação a objeto (trabalhando com a [[Problema das apaixonadas por moto | Questão 1]] da Prova da AVI orientada a objeto). |
=== Aula do dia 13/11/2010 (3,5 h/a) === | === Aula do dia 13/11/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Exercicios com orientação a objeto. | ||
+ | ;Assunto | ||
+ | :Coleções (ArrayList). | ||
+ | ;Problema | ||
+ | :[[Problema da sala cheia]]. | ||
+ | |||
=== Aula do dia 20/11/2010 (3,5 h/a) === | === Aula do dia 20/11/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Exercícios de orientação a objeto. | ||
+ | ;Assunto | ||
+ | :Exceções. | ||
+ | ;Problema | ||
+ | :[[Problema da sala cheia]] - variação 1. | ||
+ | |||
=== Aula do dia 27/11/2010 (3,5 h/a) === | === Aula do dia 27/11/2010 (3,5 h/a) === | ||
+ | ;Atividades | ||
+ | :Apresentação de trabalhos da AVII | ||
+ | ::Antônio. | ||
+ | ::Saulo. | ||
+ | |||
=== Aula do dia 04/12/2010 (4 h/a) === | === Aula do dia 04/12/2010 (4 h/a) === | ||
− | ; | + | :Prova AVII |
− | : | + | ::'''Instruções''' |
+ | :::Esta avaliação tem valor de quatro pontos e consta de duas questões de mesmo valor (2,0). Você deve seguir rigorosamente as instruções desta seção e dos enunciados. Descumpri-las implicará em perda total ou parcial de pontuação. | ||
+ | :::*A prova é individual. Isto significa que todos os problemas devem ser resolvidos pelo autor, ou seja, mesmo que este pesquise em outras fontes ele deve construir suas respostas sendo capaz de explicá-las caso seja solicitado. | ||
+ | :::*Todas as questões devem ser feitas para receber entradas por stdin e enviar saídas para stdout. Por exemplo, programas com interface de janela (swing ou similar) que não aceitem entradas por stdin e saídas na stdout serão desconsiderados. | ||
+ | :::*A Questão 1 deve ser feita e entregue em sala. | ||
+ | :::*As proposições da Questão 2 fazem parte da avaliação. | ||
+ | :::*Existem duas possibilidades para a entrega da Questão 2. 1) Feita e entregue em sala no dia desta avaliação; 2) Começada em sala e entregue até o dia 8/12. Nesta última possibilidade o professor se reserva ao direito de pedir explicações a respeito do código entregue. Estas explicações, caso sejam solicitadas, serão feitas impreterivelmente no dia 11/12 na sala de aula. A falta de apresentação quando solicitada acarreta em pontuação nula. A nota será de acordo com a apresentação feita. | ||
+ | :::*A segunda forma de entrega da Questão 2 será unicamente via o e-mail linhadireta@adonaimedrado.pro.br. Se uma confirmação de recebimento não for obtida até o dia 10/12 contate seu professor através do telefone (71) 8873-1906 para providenciar outro método de entrega. | ||
+ | ::Questão 1: [[Problema da rotação dos algarismo do número inteiro (invertido)]]. | ||
+ | :::[[Solução: Problema da rotação dos algarismo do número inteiro (invertido)]]. | ||
+ | ::Questão 2: [[Problema do jogo do milhão (Versão para Java)]]. | ||
+ | :::[[Solução: Problema do jogo do milhão (Versão para Java)]]. |
Latest revision as of 19:05, 18 December 2010
Contents
- 1 Programa
- 2 Links sugeridos
- 3 Avaliações
- 4 Especificação de trabalho
- 5 Cronograma
- 5.1 Aula do dia 14/08/2010 (3,5 h/a)
- 5.2 Aula do dia 21/08/2010 (3,5 h/a)
- 5.3 Aula do dia 28/08/2010 (3,5 h/a)
- 5.4 Aula do dia 04/09/2010 (3,5 h/a)
- 5.5 Aula do dia 11/09/2010 (3,5 h/a)
- 5.6 Aula do dia 18/09/2010 (3,5 h/a)
- 5.7 Aula do dia 25/09/2010 (3,5 h/a)
- 5.8 Aula do dia 02/10/2010 (3,5 h/a)
- 5.9 Aula do dia 09/10/2010 (3,5 h/a)
- 5.10 Aula do dia 16/10/2010 (3,5 h/a)
- 5.11 Aula do dia 23/10/2010 (3,5 h/a)
- 5.12 Aula do dia 30/10/2010 (3,5 h/a)
- 5.13 Aula do dia 06/11/2010 (3,5 h/a)
- 5.14 Aula do dia 13/11/2010 (3,5 h/a)
- 5.15 Aula do dia 20/11/2010 (3,5 h/a)
- 5.16 Aula do dia 27/11/2010 (3,5 h/a)
- 5.17 Aula do dia 04/12/2010 (4 h/a)
Programa
O programa oficial da disciplina está disponível em PDF.
Links sugeridos
- Linguagem Java
- Site para treinamento
- Livro de problemas:
Avaliações
Conforme padrão pedagógico FAZAG:
- AVI: Trabalho em Grupo (4,0 pontos) + Prova (6,0 pontos).
- AVII: Trabalho Individual (6,0 pontos) + Prova (4,0 pontos).
Especificação de trabalho
- Trabalho em Grupo: Linguagem de Programação Orientada a Objetos I (FAZAG 2010.2).
- Trabalho Individual: Linguagem de Programação Orientada a Objetos I (FAZAG 2010.2).
Cronograma
Aula do dia 14/08/2010 (3,5 h/a)
- Atividades
- Apresentação da disciplina, professor e alunos.
- Proposta do método de trabalho.
- Assuntos
- Conceitos básicos
- Links sugeridos
- Hello World!" for Microsoft Windows.
- Hello World!" for Solaris OS and Linux.
- A Closer Look at the "Hello World!" Application.
- Códigos exemplo
- Java: Programa Eco.
- Java: Soma de dois números inteiros.
- Java: Divisão de dois números inteiros.
- Problemas
- Problema da soma.
- Problema da média.
- Problema do número espelho.
Aula do dia 21/08/2010 (3,5 h/a)
- Atividades
- Problemas anteriores.
Aula do dia 28/08/2010 (3,5 h/a)
- Atividades
- O que eu aprendi na aula passada?
- Assuntos
- Conceitos básicos
- Links sugeridos
- Questions and Exercises: Control Flow Statements.
- Códigos exemplo
- Java: Acumulador.
- Java: Número e seus nomes.
- Problemas
- Problema da sequência de Fibonacci.
- Problema do quadrado gêmeo das partes.
- Problema do giro da palavra.
Aula do dia 04/09/2010 (3,5 h/a)
- Atividades
- Exercícios anteriores.
- Links sugeridos
- Java (linguagem de programação).
- Introdução a Orientação a Objetos.
- Trabalhos de outros alunos
- Atenção: o material abaixo não deve ser tomado como modelo e pode conter erros (veja alguns dos pontos indicados para correção aqui).
- Trabalho Semestral - Descrição de Tecnologias Utilizadas (a partir da página 11).
- Trabalho Semestral: Java Server Faces (a partir da página 14).
- Java e RichFaces (a partir da página 5).
Aula do dia 11/09/2010 (3,5 h/a)
- Atividades
- Excercícios anteriores e dúvidas dos trabalhos.
Aula do dia 18/09/2010 (3,5 h/a)
- Atividade
- Trabalho em grupo da AVI
Aula do dia 25/09/2010 (3,5 h/a)
- Atividades
- Continuação dos Trabalhos em Grupo AVI.
Aula do dia 02/10/2010 (3,5 h/a)
Não houve aula (eleições).
Aula do dia 09/10/2010 (3,5 h/a)
- Atividades
- Continuação dos Trabalhos em Grupo AVI.
Aula do dia 16/10/2010 (3,5 h/a)
- Atividade
- Prova da AVI
Aula do dia 23/10/2010 (3,5 h/a)
- Assuntos
- Princípios da orientação a objetos (OO) e de OO em Java.
- Classes.
- Interface.
- Herança.
- Polimorfismo de classe.
- Links sugeridos
- Classe.
- O que é uma classe.
- Material utilizado
- Programação Orientada a Objeto - Introdução.
Aula do dia 30/10/2010 (3,5 h/a)
Não houve aula (eleições).
Aula do dia 06/11/2010 (3,5 h/a)
- Atividades
- Exercício de orientação a objeto (trabalhando com a Questão 1 da Prova da AVI orientada a objeto).
Aula do dia 13/11/2010 (3,5 h/a)
- Atividades
- Exercicios com orientação a objeto.
- Assunto
- Coleções (ArrayList).
- Problema
- Problema da sala cheia.
Aula do dia 20/11/2010 (3,5 h/a)
- Atividades
- Exercícios de orientação a objeto.
- Assunto
- Exceções.
- Problema
- Problema da sala cheia - variação 1.
Aula do dia 27/11/2010 (3,5 h/a)
- Atividades
- Apresentação de trabalhos da AVII
- Antônio.
- Saulo.
Aula do dia 04/12/2010 (4 h/a)
- Prova AVII
- Instruções
- Esta avaliação tem valor de quatro pontos e consta de duas questões de mesmo valor (2,0). Você deve seguir rigorosamente as instruções desta seção e dos enunciados. Descumpri-las implicará em perda total ou parcial de pontuação.
- A prova é individual. Isto significa que todos os problemas devem ser resolvidos pelo autor, ou seja, mesmo que este pesquise em outras fontes ele deve construir suas respostas sendo capaz de explicá-las caso seja solicitado.
- Todas as questões devem ser feitas para receber entradas por stdin e enviar saídas para stdout. Por exemplo, programas com interface de janela (swing ou similar) que não aceitem entradas por stdin e saídas na stdout serão desconsiderados.
- A Questão 1 deve ser feita e entregue em sala.
- As proposições da Questão 2 fazem parte da avaliação.
- Existem duas possibilidades para a entrega da Questão 2. 1) Feita e entregue em sala no dia desta avaliação; 2) Começada em sala e entregue até o dia 8/12. Nesta última possibilidade o professor se reserva ao direito de pedir explicações a respeito do código entregue. Estas explicações, caso sejam solicitadas, serão feitas impreterivelmente no dia 11/12 na sala de aula. A falta de apresentação quando solicitada acarreta em pontuação nula. A nota será de acordo com a apresentação feita.
- A segunda forma de entrega da Questão 2 será unicamente via o e-mail linhadireta@adonaimedrado.pro.br. Se uma confirmação de recebimento não for obtida até o dia 10/12 contate seu professor através do telefone (71) 8873-1906 para providenciar outro método de entrega.
- Esta avaliação tem valor de quatro pontos e consta de duas questões de mesmo valor (2,0). Você deve seguir rigorosamente as instruções desta seção e dos enunciados. Descumpri-las implicará em perda total ou parcial de pontuação.
- Questão 1: Problema da rotação dos algarismo do número inteiro (invertido).
- Questão 2: Problema do jogo do milhão (Versão para Java).
- Instruções