O guia definitivo para conquistar a aprovação em concurso público.pdf
Linguagem de Programação II - Plano de Ensino
1. Campus Higienópolis: Rua da Consolação, 896 Edifício João Calvino – 7º andar – Sala 715 Consolação São Paulo – SP CEP 01302-907
Tel. (11) 2114-8165 www.mackenzie.br - e-mail: decanatoacademico@mackenzie.br
UNIVERSIDADE PRESBITERIANA MACKENZIE
Decanato Acadêmico
Unidade Universitária: Faculdade de Computação e Informática
Curso: Sistemas de Informação Núcleo Temático: Programação
Disciplina: Linguagem de Programação II Código da Disciplina:
110.5313-5
Professor(es):
Daniel Arndt Alves (03J)
Jamilson Bispo dos Santos (03J11)
Rogério de Oliveira (03J12)
DRT:
112447-7
107714-7
111566-5
Etapa: 3º.
Carga horária:
60 h/a semestrais e 4 h/a
semanais (2T e 2L)
( 2 ) Teórica
( 2 ) Prática
Semestre Letivo:
2º. Sem. 2013
Ementa:
Esta disciplina deve avançar no paradigma de orientação a objeto apresentando os conceitos
teóricos e implementando os seguintes pontos: interfaces, polimorfismo, tipos genéricos,
enumerações, componentes GUI (Java AWT e Java Swing) e manipulação de arquivos. Na parte
prática o aluno deve implementar exercícios que utilizem estes conceitos.
Objetivos:
Conceitos Procedimentos e Habilidades Atitudes e Valores
- Aprender os fundamentos de
interfaces, polimorfismo e
demais conceitos avançados de
programação.
- Compreender as aplicações
destas ferramentas.
- Entender e analisar a
eficiência destes paradigmas de
programação.
- Ser capaz de entender o
funcionamento dos conceitos
de herança e polimorfismo.
- Ser hábil determinar as
melhores escolhas de
ferramental para cada
aplicação.
- Ser capaz de desenvolver
aplicações utilizando estes
paradigmas.
- Ter consciência da importância
da modelagem orientada a
objetos para aplicações
científicas ou comerciais.
- Valorizar o reuso de código.
- Fazer uso do trabalho
cooperativo para
desenvolvimento de tarefas
complexas.
Conteúdo Programático:
Herança
- Polimorfismo
- Conceitos básicos de polimorfismo
- Tipos de polimorfismos: inclusão, paramétrico, coerção e sobrecarga
- Comportamento dos objetos com o polimorfismo
- Conversão de tipo (type casting)
2. Campus Higienópolis: Rua da Consolação, 896 Edifício João Calvino – 7º andar – Sala 715 Consolação São Paulo – SP CEP 01302-907
Tel. (11) 2114-8165 www.mackenzie.br - e-mail: decanatoacademico@mackenzie.br
UNIVERSIDADE PRESBITERIANA MACKENZIE
Decanato Acadêmico
Classe Abstrata
- Conceitos básicos de classe abstrata
- Como definir uma classe abstrata
- Definição e utilização de métodos abstratos
Interface
- Conceitos básicos de interface
- Como definir uma interface
- Quando utilizar interfaces em projetos com a Linguagem Java
- Definição de atributos e métodos em uma interface
- Simulação de herança múltipla na Linguagem Java utilizando interfaces
- Diferenças entre interfaces e classes abstratas
- A interface Comparable (java.lang.Comparable)
Conceitos Avançados
Tipos Genéricos
- Introdução a utilização de tipos genéricos na Linguagem Java
- Convenção na nomenclatura de identificação dos tipos genéricos
- Diferenças entre parâmetros de “Tipo Limitado” e “Tipo Não Limitado”
- Instanciação de objeto que utiliza um tipo genérico
Componentes GUI
- Java AWT e Java Swing
- Como trabalhar com interfaces gráficas na Linguagem Java
- Características dos pacotes AWT e Swing
- Diferenças entre Component e Container
- Centralizando automaticamente uma janela na área de trabalho
- Gerenciadores de Layout: Padrão, FlowLayout, BorderLayout e GridLayout
- A classe JFrame (javax.swing.JFrame)
- A classe JLabel (javax.swing.JLabel)
- A classe JButton (javax.swing.JButton)
- A classe JTextField (javax.swing.JTextField)
- A classe JRadioButton (javax.swing.JRadioButton)
Controle de Eventos
- Adicionando um evento em um determinado componente
- Utilização e vantagens das classes adaptadoras
- Interfaces controladoras: ActionListener, AdjustmentListener, FocusListener,
ItemListener, KeyListener, MouseListener, MouseMotionListener e WindowListener
Java JDBC
- Conexão com banco de dados através do JDBC
- Arquitetura das camadas JDBC
- Introdução a Linguagem SQL
- As interfaces: Connection, ResultSet, Statement e PreparedStatement
- A classe: DriverManager
- Registrando drivers de conexão
- Abrir e fechar uma conexão com o banco de dados
- Consultas simples ao banco de dados
- Métodos para acesso a dados de registros
- Consultas parametrizadas
3. Campus Higienópolis: Rua da Consolação, 896 Edifício João Calvino – 7º andar – Sala 715 Consolação São Paulo – SP CEP 01302-907
Tel. (11) 2114-8165 www.mackenzie.br - e-mail: decanatoacademico@mackenzie.br
UNIVERSIDADE PRESBITERIANA MACKENZIE
Decanato Acadêmico
Java I/O
- Manipulação de arquivos através das classes do pacote java.io
- Leitura de dados através das classes InputStream, InputStreamReader e BufferedReader
- Escrita de dados através das classes OutputStream, OutputStreamWriter e
BufferedWriter.
- A classe File (java.io.File)
Metodologia:
- Aulas expositivas
- Listas de exercícios
- Disponibilização de material complementar
- Utilização do ambiente Moodle
- Aulas práticas com utilização de um ambiente de desenvolvimento Java - JDK, Eclipse,
NetBeans, JCreator ou equivalente, documentação online da API do Java, uso do Javadoc
Critério de Avaliação:
• Avaliação Teórica Parcial, individual, dissertativa sem consulta – 15%
• Avaliação Unificada, individual, dissertativa sem consulta (PROCOMP) – 10%
• Desenvolvimento de listas de exercícios, em grupo, com consulta – 5%
• Atividades práticas de laboratório, individuais ou em grupo, com consulta – 20%
• Prova Final, individual, dissertativa e sem consulta – 50%
• Nota de Participação (calculada a partir da interação com os recursos complementares –
Moodle, sendo 60% dos exercícios complementares submetidos e 40% do tempo gasto na
interação com o ambiente Moodle).
Bibliografia Básica:
DEITEL, Paul J. Java: como programar. São Paulo: Pearson Education do Brasil, 2011. xxix, 1144
p. ISBN 9788576055631.
ARNOLD, Ken; GOSLING, James; HOLMES, David. The java programming language. 3rd ed.,
3rd printing Boston: Addison-Wesley, 2000. 595 p. : il. ; 24 cm (The java series) ISBN 0201704331
Bibliografia Complementar:
PUGA, Sandra; RISSETTI, Gerson. Lógica de programação e estrutura de dados: com
aplicações em Java. 2. ed. São Paulo: Pearson Education do Brasil, 2010. xiv, 262 p. ISBN
9788576052074
GOODRICH, Michael T.; TAMASSIA, Roberto. Data structures and algorithms in java. New
york: John Wiley, c1988. 738 p. : il. ; 25 cm (Wordwide series in computer science) ISBN 0-471-
19308-9
BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. UML: Guia do Usuário. 2. tiragem Rio de
Janeiro: Elsevier, 2006. xviii, 474 p. ISBN 8535217843