Departamento de Engenharia Electrotécnica e de Computadores
Secção de Informática
João Correia Lopes

Cursos de Verão

Acessibilidade e Facilidade de utilização

  1. Acessibilidade e Facilidade de utilização ("usabilidade"): acessibilidade, concepção para a acessibilidade; directivas para a acessibilidade do conteúdo da Web. Porquê usabilidade; erros mais frequentes.
  2. Desenho de páginas: utilização do ecrã; desenho independente da plataforma; separação entre significado e apresentação; tempos de resposta; ligações; folhas de estilos; molduras (frames).
  3. Desenho de conteúdos: escrever para a Web; títulos de página; escrita de títulos; legibilidade; documentação em linha; multimédia; imagens e fotografias; animação; vídeo; áudio; gráficos 3D.
  4. Desenho de sítios: a página principal (Home Page); largura da página; a página principal e as páginas interiores; metáforas; navegação; o utilizador controla a navegação; sub-sítios; capacidades de procura; desenho de URLs; navegação com applets; desenho de sítios em Intranets e Extranets.

Programação Java de Servidor

  1. Aplicações na Web
  2. Servlets Java: páginas dinâmicas, modelo de programação, ciclo de vida, API. Exemplo de aplicação.
  3. Sessões: Conceitos básicos; Interface HttpSession; Ciclo de vida do Objecto session; Implementar sessões; Sessões e Eventos.
  4. Acesso a Bases de Dados: JDBC e SQLJ. JDBC: arquitectura, tipos de drivers, cenários de utilização, mapeamento de tipos, execução de interrogações, excepções. SQLJ: SQL embebido em Java, arquitectura, variáveis e cláusulas, resultados e iteradores. Exemplo de aplicação com uma arquitectura de 3 camadas, servlets e HTML.
  5. Java Server Pages (JSP), vantagens da arquitectura JSP em relação a servlets; ciclo de vida de uma página JSP, modelos de acesso a dados, sintaxe e semântica, tratamento de excepções, gestão de sessões. Exemplo de aplicação.
  6. Enterprise Java Beans (EJB); ligar servlets a EJB; Mostrar na Web dados de saída de um EJB.
  7. Web Services: História e arquitecturas; SOAP; Implementações Java e .NET; Exemplo de utilização.

XML

  1. XML: introdução, documentos XML, documentos XML bem-formados; validade, exemplos de utilização de XML para troca de dados e para publicação de informação. Anotação de documentos, elementos, atributos, declarações, instruções de processamento.
  2. Estrutura física de um documento XML: distribuição por componentes, entidades internas e externas de texto, entidades binárias. Estrutura lógica de um documento XML: Document Type Definition (DTD), estrutura de um DTD, processamento de DTDs, declaração de elementos, declaração de atributos, tipos, secções condicionais, declaração de notações.
  3. Schemas XML: Validação de documentos com Schemas XML, declaração de elementos, tipos de dados, tipos complexos, declaração de atributos; chaves, referências a chaves, unicidade, facetas. XML Namespaces.
  4. Navegação em documentos XML: URL e Xpath; Eixos; Expressões; predicados; Filtros. Ligações hipertexto em documentos XML: Xlink e Xpointer.
  5. Processamento de XML, ler e escrever XML, arquitectura do processador de XML. Processamento de XML: Document Object Model DOM API Core e XML, interfaces Node, Element e Document; Exemplo de processamento de XML com DOM em Java. Processamento de XML: SAX 1.0: Simple API for XML, call-back interface, Java SAX API, interfaces Parser, DocumentHandler e HandlerBase; Exemplo de processamento de XML com SAX em Java
  6. Transformação de XML com XSLT.
  7. Apresentação de XML: CSS, regras e propriedades; ligação de CSS a XML; formatação de documentos com XSL, autoria, objectos de formatação e FO DTD, transformação de XML com XSLT, transformação para HTML, templates e regras XSLT, navegação com Xpath.

SQL3

  1. SQL3, SGBD Relacional-Objecto: Introdução, modelo e tipos básicos; Equivalência de tipos; Extensões ao Sistema de Tipos. Tipos de Dados Abstractos (ADT): atributos, criação e iniciação (funções construtor), funções destrutor, interface pública, privada e protegida, uso de ADTs, funções observador e modificador, subtipagem, herança, substitutabilidade, predicados de tipo, ligações estáticas e dinâmicas de funções, despacho dinâmico.
  2. Persistência, tabelas base persistentes, tabelas globais temporárias, tabelas locais temporárias, tabelas vista, tabelas derivadas. Persistência de ADTs. Módulos persistentes. Tipos colecção: colecções de ADTs, tipo ROW, tipos referência, tipo SET, tipo LIST, tipo MULTISET, construtores de tipos colecção, interrogações sobre colecções, manipulação de colecções.
  3. Regras de integridade e gatilhos. Restrições de Integridade em SQL-92: restrições de chave, R.I. referencial, restrições baseadas em atributos, restrições baseadas em tuplos, asserções em SQL-92, avaliação de asserções. Manutenção de restrições de integridade. Gatilhos em SQL3: definição de gatilhos, modelo de execução, criação, eventos, granularidade, variáveis e tabelas de transicção, condições, acções e tempo de activação. Asserções em SQL-3.
  4. Arquitectura SQL. Módulos de cliente e módulos de servidor. Rotinas do esquema: SQL e externas. Elementos procedimentais de SQL: comandos compostos, declaração de variáveis e atribuição, execução condicional. Excepções e tratamento de condições. SQL recursivo.