Ficha de Disciplina
Curso: Mestrado em Métodos Quantitativos Aplicados à Gestão
Ano lectivo: 2002/03
Nome da disciplina: Programação de Computadores II
Módulo/Trimestre: 2º
Número de Horas: 30
Número de Créditos: 2
Obrigatória
Docente: João Correia Lopes, jlopes AT fe.up.pt
Docente: João Pascoal de Faria, jpf@fe.up.pt
Resumo
Programação orientada aos objectos, orientação aos objectos, classes e
objectos. Abstracção e encapsulamento, Herança e Polimorfismo. Análise
e desenho orientado aos objectos.
Construção de aplicações para a Web. Usabilidade. Arquitecturas
distribuídas. Processamento estruturado de documentos. Linguagens do
lado do cliente Web. Linguagem do lado do Servidor Web. Acesso a dados
via Web.
Resumo biográfico do Docente
João Correia Lopes: licenciado em Engenharia Electrotécnica e
de Computadores pela FEUP, em 1984, doutorado (PhD) em Ciência de
Computadores pela Universidade de Glasgow, UK, em 1997.
É actualmente Professor Auxiliar do Departamento de Engenharia
Electrotécnica e de Computadores da FEUP, secção de Informática, onde
lecciona desde 1984.
É investigador do Inesc Porto desde 1995, onde participou em projectos
de Sistemas de Informação.
Domínio de especialização: Sistemas de Informação, Tecnologia de Bases
de Dados, Aplicações na Web.
João Pascoal Faria: licenciado em Engenharia Electrotécnica e
de Computadores pela FEUP, em 1985; Doutoramento em Engenharia
Electrotécnica e de Computadores, pela FEUP, em 1999.
É actualmente Professor Auxiliar do Departamento de Engenharia
Electrotécnica e de Computadores da FEUP, secção de Informática, onde
lecciona desde 1985.
É investigador do Inesc Porto desde 1985, onde participou em projectos
de Sistemas de Informação.
Domínio de especialização: Sistemas de Informação, Bases de Dados,
Engenharia de Software.
I. Objectivos
Dotar os alunos de conhecimentos necessários à construção de
aplicações locais e distribuídas, nomeadamente na Web, usando
linguagens orientadas aos objectos.
II. Metodologia
Aulas de exposição e trabalhos práticos de laboratório dentro e fora
das aulas.
III. Conteúdo Programático
Introdução (estrutura de um programa em Java, desenvolvimento de
programas, execução de programas, características da linguagem,
aplicações e applets).
Tipos de dados básicos, operadores, controlo de fluxo; "arrays".
Programação com classes: definição de métodos de instância, campos de
instância, construtores, métodos estáticos, campos estáticos,
constantes.
Princípios da programação orientada por objectos; controlo de acesso e
encapsulamento; interfaces, herança e polimorfismo.
Manipulação de strings, ficheiros e "streams"; colecções.
Desenvolvimento de interfaces gráficas com AWT e SWING.
Tratamento de excepções; "multithreading".
Documentação de programas com Javadoc.
Princípios de análise e desenho orientado por objectos.
Arquitecturas distribuídas, XML e Web Services.
Acessibilidade e usabilidade.
Interfaces Web com HTML, CSS, Javascript.
Lógica de negócio com JSP, servlets e Beans.
Acesso a dados com JDBC.
IV. Métodos de Avaliação
Exame individual a meio do trimestre e trabalho de grupo a apresentar no final do trimestre.
Cada grupo será constituído por dois alunos.
V. Bibliografia
- Java How to Program, Harvey M. Deitel, Paul J. Deitel, Prentice Hall, 2001, ISBN=0130341517
- Java for the Web with Servlet, JSP and EJB -- A Developer's Guide to Scalable Solutions, Budi Kurniawan, New Riders Publishing, 2002, ISBN=073571195X
- Java Programming Language, Ken Arnold, James Gosling, David Holmes, Addison-Wesley Longman, 2000, ISBN=0201704331
- More Sevlets and Javaserver Pages, Marty Hall, Prentice Hall, 2001, ISBN=0130676144
- Designing Web Usability: The Practice of Simplicity, Jakob Nielsen, New Riders Publishing, Indianapolis, 2000, ISBN=156205810X
VI. Aplicações informáticas