Paradigmas de Programação 2005 – 06

Propaganda
Paradigmas de Programação 2005 – 06
Apresentação da Disciplina
Equipa docente:
Jorge Louçã – coordenador da disciplina, docente de EI – gab. D609 – [email protected]
Nuno David – docente de ETI – gab. D633 – [email protected]
Sancho Oliveira – docente de IGE – gab. D616 – [email protected]
Programa:
Programação declarativa.
Sintaxe e significado dos programas em PROLOG. Listas e
operadores. Controlo de backtraking. Input e output. Predicados prédefinidos. Operações sobre estruturas de dados. Modelos de execução
de cláusulas de forma concorrente.
Programação concorrente.
Modelos e alternativas. Estudo da classe THREAD de JAVA
dedicada à gestão de processos múltiplos. Ciclo de vida de um
processo ligeiro. Prioridade. Sincronização. Recursos partilhados.
Starvation e deadlock. Grupos de processos ligeiros.
Outros aspectos de programação em JAVA.
Acesso a Bases de Dados Relacionais. Programação em Internet
(Applets). Documentação (Javadoc). Programação distribuída em
rede: modelo cliente/servidor com programação concorrente.
Bibliografia:
Tutorial on-line da Sun Microsystems sobre programação concorrente em JAVA
http://java.sun.com/docs/books/tutorial/essential/threads
“Concurrent Programming in Java : Design Principles and Patterns”
Doug Lea Edição
Edição The Java Series
“PROLOG Programming for Artificial Intelligence”
Ivan Bratko
Ed. Addison Wesley, 3ª edição 2001
Outra documentação distribuída na disciplina.
Avaliação:
Avaliação Periódica
A avaliação periódica inclui três momentos de avaliação, incluindo dois
trabalhos de programação em grupo e uma frequência.
Grupos de 3 / 4 alunos.
Primeiro trabalho
Incidência : Prolog
Ponderação : 20% da nota
Data de Entrega: 07.10.2005
Nota mínima: 7,5 valores
Segundo trabalho
Incidência : programação distribuída em JAVA (inclui matéria de
concorrência, prog.distr. e acesso a BD)
Ponderação : 40% da nota
Data de Entrega : 09.12.2005
Nota mínima: 7,5 valores
Frequência
Incidência : toda a matéria.
Ponderação : 40% da nota final.
Data de realização : no decurso da 1ª época, em data a indicar
oportunamente. Na frequência é exigida uma classificação
mínima de 7.5 valores para aprovação na cadeira.
Apenas ficam dispensados do exame final os alunos que obtiverem a nota
final de dez valores em avaliação periódica e não tenham uma nota
inferior a sete e meio no teste ou em cada um dos trabalhos. Caso a nota
de um trabalho seja superior à nota da frequência em mais de 4 valores e
a nota da frequência seja inferior a 13 valores, o aluno será submetido a
uma avaliação oral individual para a determinação da nota final da
disciplina. Caso o aluno opte por não comparecer na referida avaliação
oral a sua nota final será a nota do teste acrescida de dois valores. Em
caso de dúvida a equipa docente reserva-se o direito de submeter o aluno
a uma avaliação oral para determinação da nota final.
Exame Final
Exame final escrito. Os alunos que obtenham aprovação em avaliação
contínua poderão fazer melhoria de nota em exame final de 2ª época
desde que devidamente inscritos nos serviços académicos.
Incidência : toda a matéria.
Ponderação : 100% da nota final.
As notas dos trabalhos práticos realizados ao longo do ano, em avaliação
periódica, não são consideradas para cálculo da nota do exame final.
Notas entre 7,5 e 9,5 valores dão acesso a oral.
São aprovados os alunos que obtiverem nota final superior ou igual a 9,5
valores.
Plano das aulas :
semanas 1, 2 e 3 – Prolog
1ª aula – apresentação.
2ª aula – Posicionamento do Prolog nos diferentes Paradigmas de
Programação; introdução ao Prolog; factos, regras; relações; base de
conhecimentos; definição de relações; interrogação de relações;
conjunção de duas condições.
3ª aula – regras recursivas; como o Prolog responde a questões; árvores
de decisão; exercícios.
semana 4 – Programação concorrente em Java
semana 5 – Orais 1º trabalho
semanas 6 e 7 – Programação concorrente em Java
semana 8 – Applets + Javadoc
semanas 9 e 10 – JDBC
semanas 11 e 12 – Programação Distribuída em JAVA (modelo de programação
distribuída com processos ligeiros e sockets)
semanas 13 – 2º trabalho
semana 14 – Orais 2º trabalho
Horários:
2º ano de Licenciatura em Engenharia Informática
Docente: Jorge Louçã
5ª-feira 13:00 – 14:20
5ª-feira 14:30 – 15:50
5ª-feira 16:10 – 17:30
Horário de dúvidas: 5ª-feira das 10:30 – 13:00, sala D609
2º ano de Licenciatura em Engenharia em Telecomunicações e Informática
Docente: Nuno David
3ª-feira 11:10 – 12:30 e 13:00 – 14:20
5-feira 9:40 – 12:30 e 14:30 – 17:30
Horário de dúvidas: 3º-feira das 15:00-18:30 e 5º-feira 17:30-18:30
2º ano de Licenciatura em Informática e Gestão de Empresas
Docente: Sancho Oliveira
3ª-feira: 14:30 – 15:50 (IB2), 16:10 – 17:30 (IB1)
5ª-feira: 13:00 – 14:20 (IB2), 16:10 – 17:30 (IB1)
6ª-feira: 14:30 – 15:50 (IB1), 16:10 – 17:30 (IB2)
Horário de dúvidas: 3ª-feira das 10:00 – 14:30, sala D616
Download