Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Linguagem de Programação II - Plano de Ensino

1,398 views

Published on

Plano de Ensino da disciplina de Linguagem de Programação II

Published in: Education
  • Be the first to comment

  • Be the first to like this

Linguagem de Programação II - Plano de Ensino

  1. 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. 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. 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

×