Plano de Ensino
Período Letivo 2013.1
Plano de Ensino do Componente Curricular
EXA 805 – ALGORITMOS E PROGRAMAÇÃO II
Professor
João Batista da Rocha Junior
Carga Horária
30 horas / (T:30; P:00; E:00)
Prérequisitos
EXA 801 – Algoritmos e Programação I
MI - Algoritmos
Ementa
Princípios de orientação a objetos: objetos, classes, atributos, métodos, mensagens, encapsulamento, herança, composição, polimorfismo, interfaces, acoplamento, ligação dinâmica. Interfaces gráficas e programação orientada a eventos. Tratamento de exceções. Princípios de testes e depuração de programas. Paradigmas de linguagem de programação.
Objetivos, Habilidades e Competências (geral)
Ser capaz de resolver problemas através da interpretação de cenários do mundo real, modelando soluções através de modelos e programas orientados a objetos e implementando as soluções através de programas de computador escritos na linguagem Java.
Objetivos, Habilidades e Competências (específicos)
Compreender a modelagem e programação orientada a objetos, e conceitos básicos relacionados;
Ser capaz de escrever, compilar, depurar e testar programas na linguagem de programação Java;
Aplicar estruturas de dados orientadas a objetos para modelar dados simples e complexos a partir de problemas reais;
Tratar erros e exceções em programas na linguagem Java;
Criar interfaces gráficas simples na linguagem Java.
Capacidades esperadas do aluno ao término do curso
Identificar problemas de informação e, na medida do possível, solucioná los para atingir os objetivos esperados;
Analisar e solucionar problemas, através do uso sistemático de programas orientados a objetos;
Entender os conceitos de modelagem de soluções orientadas a objetos, tendo em vista as técnicas de programação e a linguagem Java;
Dominar comandos básicos, estruturas de dados e tecnologias básicas da Linguagem Java;
Implementar sistemas de computação orientados a objetos conforme as especificações dos mesmos.
Conteúdo Programático
Tipos abstratos de dados; independência entre especificação e implementação. Princípios de orientação a objetos: objetos, classes, atributos, métodos, mensagens, encapsulamento, herança, composição, polimorfismo, interfaces, acoplamento, ligação dinâmica. Interfaces gráficas e programação orientada a eventos. Princípios de testes e depuração de programas. Construção e uso de bibliotecas básicas.
Introdução
Paradigmas de Programação
Orientação a Objetos
Conceitos Básicos
Objetos
Classes
Atributos e Estado
Métodos, Mensagens e Comportamentos
Encapsulamento
Herança
Polimorfismo e Ligação Dinâmica
Relacionamentos e Composição
Acoplamento e Coesão
Linguagem de Programação Java
Implementação de Classes e Objetos
Classes, Atributos e Métodos Final
Classes Abstratas e Interface
Atributos e Métodos Estáticos
Tratamento de Exceções
Estruturas de Dados Básicas (Collections)
Interface Gráfica e programação orientada a eventos
Manipulação de Arquivos
Metodologia
A metodologia deste módulo será de Aulas Expositivas, mas haverá integração com os módulos do Estudo Integrado de Programação, Estrutura de Dados, Projeto de Sistemas, e Matemática Discreta. As Aulas Expositivas serão aulas dialogadas com o objetivo de introduzir assuntos que serão tratados mais detalhadamente nos problemas do Estudo Integrado de Programação.
Material Utilizado
Salas tradicionais de aula, com quadro negro ou branco, kit para escrever nos quadros, retroprojetor, computador e canhão multimídia.
Avaliação
O módulo será dividido em três unidades, para que o estudante possa refletir sobre sua situação em diferentes momentos do curso e, caso necessário, realizar correções de rumo no processo de aprendizagem.
Medidas da Unidade
A medida de cada uma das três unidades será extraída de uma média ponderada de uma prova escrita, com peso 7, e a avaliação dos produtos dos grupos tutoriais do Módulo Integrador de Programação, com peso 3. Os alunos já aprovados em período letivo anterior terão apenas a nota da prova escrita, que corresponderá à medida da unidade.
Média Parcial
A média parcial será a média aritmética das medidas de cada unidade. Obtendo média igual ou superior a 7,0 (sete), o estudante pode ser aprovado, caso cumpra os requisitos de frequência.
Prova Final
Não obtendo média parcial suficiente na avaliação do módulo, o estudante poderá fazer prova final, e a média final será calculada de acordo com o sistema de avaliação vigente na UEFS.
Aprovação no módulo
Para ser aprovado no módulo, o estudante precisa cumprir os seguintes requisitos:
Ter frequência igual ou superior a 75% da carga horária efetiva ministrada no módulo, caso contrário haverá reprovação por frequência;
Ser aprovado na avaliação do módulo, caso contrário haverá reprovação por nota.
Referências
ECKEL, B. Thinking in Java, Prentice Hall, 2002
ECKEL, Bruce. Pensando em Java (tradução de Thinking in Java). Online.
The Java Tutorials. Online.
Lynn Andrea Stein. Interactive Programming in Java. Online.
IEEE e ACM. Software Engineering Code of Ethics and Professional Practice. Online.
Qualiti Software Processes. Padrão de codificação Java. Online.
Java API. Online.
SANTOS, R. Introdução à Programação Orientada a Objetos usando Java. Campus, 2003.
KOLLING, M e BARNES, D. J. Programação Orientada a Objetos com Java, Pearson, 2004.
MEYER, B. ObjectOriented Sofware Construction, segunda edição, Prentice Hall PTR, 2000.
HORSTMANN, C. e CORNELL, G. Core Java 2, V.1: Fundamentos, Makron, 2000.
DEITEL, H.M. e DEITEL, P.J. JAVA: Como Programar, Bookman Companhia Editora, 2003.