Nos últimos anos, a World Wide Web criou oportunidades únicas para o desenvolvimento de aplicações. A gama de websites existentes actualmente é muito vasta e vai desde uma simples página pessoal com informação estática, até a sofisticados motores de pesquisa que manipulam bases de dados gigantescas. No meio da gama, existem websites para suportar trabalho colaborativo, comunidades virtuais, e comércio electrónico, entre outros.
As aplicações na Web requerem a integração de várias tecnologias que devem funcionar de modo fiável 24 horas por dia, 7 dias por semana. Para construir uma aplicação Web com sucesso, tem de se saber um pouco sobre a configuração dos servidores Web, um pouco sobre sistemas de bases de dados relacionais e SQL, ser fluente numa linguagem de scripting, saber o básico sobre o protocolo HTTP, saber a sintaxe do HTML, e saber um pouco sobre user-interface design.
Nesta cadeira, os alunos irão aprender um pouco de tudo isto. Especificamente, ao terminar a cadeira os alunos deverão
A disciplina é inspirada numa cadeira chamada Software Engineering for Innovative Web Services (ver http://philip.greenspun.com/teaching/one-term-web) que começou a ser dada em 1999 no departamento de computer science do MIT.
| nome | horário de dúvidas | |
|---|---|---|
| Fernando Lobo | flobo at ualg ponto pt | A anunciar brevemente Ed. 1 - sala 1.64 |
Lista de alunos inscritos à disciplina.
Ter aproveitamento às cadeiras de Programação I, Programação II, Programação e Estrutura de Dados, Base de Dados. Recomenda-se também que tenham conhecimentos sobre Sistemas Operativos e Redes de Computadores.
De seguida apresento uma lista de livros que também são úteis.
Existe muito boa informação sobre estes temas nos seguintes sites da World Wide Web:
Para poderem dispensar de exame, terão de ter nota superior ou igual a 6.0 nos três pontos mencionados acima. O melhor trabalho prático terá um bónus de 2 valores na nota final. O segundo melhor trabalho terá um bónus de 1 valor.
Conceitos introdutórios, introdução à WWW. A Web como modelo cliente-servidor. Websites estáticos e websites dinâmicos. Revisão de bases dados relacionais, SQL, e transacções em bases de dados. Autenticação, cookies, sessões. Servidores Web. Scripting do lado do servidor. Scripting do lado do cliente. Design de páginas, navegação e user-interface design. Aspectos de segurança e comércio electrónico. Sites de grande dimensão, load balancing. XML. Desenvolvimento de aplicações para a Internet móvel.
| Aula | Data | Tópico |
|---|---|---|
| 1 | 18/Fev | Apresentação |
| 2 | 25/Fev | Introdução à WWW. Websites estáticos e websites dinâmicos |
| 3 | 4/Mar | Revisão de SQL e transacções em Bases de Dados |
| 4 | 11/Mar | Autenticação, cookies, sessões |
| 5 | 18/Mar | Scripting do lado do cliente |
| 6 | 8/Abr | User-interface design, sistemas de navegação |
| 7 | 15/Abr | Configuração/Performance de Servidores Web |
| 8 | 22/Abr | Segurança e Comércio Electrónico |
| 9 | 29/Abr | Sites de grande dimensão, search engines, load balancing |
| 10 | 6/Mai | XML |
| 11 | 20/Mai | Tecnologias Web da Microsoft vs Linux/UNIX |
| 12 | 27/Mai | Desafios para a Web móvel |
Actualizado pela última vez em 6/Jun/2002.
Fernando Lobo.