Skip to main content

IPLUSO 11195

Programação Web

Engenharia Informática e Aplicações (L) (IPLUSO)
  • ApresentaçãoPresentation
    A UC de programação Web, pretende ensinar e demonstrar de como são projetadas, estruturadas e programadas as páginas web, que conectam os vários utilizadores que interagem com os vários serviços alojados no lado do servidor. Têm como foco principal o lado do cliente (front-end developing), utilizando desde os vários estilos, scripts e outras tecnologias atuais, e arquitetar e desenvolver páginas web capaz de alojar informação pretendida independente do dispositivo utilizado.
  • ProgramaProgramme
    1. Visão geral de conceitos em programação web: Como funciona uma página web: DNS, Domínios e subdomínios, protocolos IP e HTTP/HTTPS; Arquitetura e aplicações Web; Modelo Cliente/Servidor e suas linguagens de programação mais utilizadas. 2. Introdução dos conceitos de desenho e propriedades em páginas web através de linguagens de marcação (HTML5 & CSS3): Estrutura e Navegação; Composição de uma página Web; Conceitos de desenho e elementos de composição; Propriedades e formulários; Desenho responsivo. 3. Introdução do conceito de desenvolvimento web (lado do cliente - front-end): Modelos de programação (sintaxe, variáveis, operadores, estruturas de controlo e funções); Interatividade; Conceito de AJAX e jQuery; Tipos de informação (JSON & XML). 4. Avaliação da performance, e acessibilidade de uma página web: Técnicas de pesquisa em páginas web (SEO) e acessibilidade; Introdução às noções de sessões, cookies, etc. 5. Desenvolvimento do projeto final da UC.
  • ObjectivosObjectives
    Os objetivos desta unidade curricular têm como noções a utilização de ferramentas de desenvolvimento/programação web, desde a sua criação, responsividade e integração num ambiente real. Para isso é necessário: Identificar os conceitos básicos executados no lado do cliente (Front-end developing), desde modelos, funcionamento e infraestrutura da World Wide Web; Conhecer as várias tecnologias, ferramentas, padrões de desenho e linguagens de programação mais utilizadas em desenvolvimento de software web. Ser capaz de avaliar e manipular páginas através de HTML5, assim como os vários estilos de páginas web estruturadas (CSS). Aplicar e manipular objetos HTML5 através de scripts no desenvolvimento de páginas Web (javascript); Saber identificar as tecnologias Web do lado servidor.  Projetar e implementar autonomamente páginas, aplicações e/ou serviços dinâmicos e adaptáveis que funcionem corretamente na Web em diversos dispositivos.
  • BibliografiaBibliography
    Slides e tutoriais fornecidos pelo docente; World Wide Web Consortium and W3 Schools Resources (W3 Schools: http://www.w3schools.com); Eric Freeman e Elisabeth Freeman, "Head First HTML with CSS & XHTML", O?Reilly; Marijn Haverbeke, "Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming", No Starch Press., 2018; David Flanagan, "JavaScript: The Definitive Guide: Master the World's Most-Used Programming Language", O'Reilly Media, Inc, 2020. Ben Frain, "Responsive Web Design with HTML5 and CSS, 3rd Edition", Packt Publishing, 2020.  
  • MetodologiaMethodology
    As aulas terão uma exposição teórica detalhada dos conceitos, princípios e técnicas fundamentais, associados a uma forte componente prática, através de resolução de exercícios propostos pelo docente. Estas têm como objetivo fundamental fazer a ligação entre os conceitos teóricos e sua aplicação prática. Espera-se que os alunos desenvolvam, implementem e testem num pequeno projeto de forma autónoma com algum apoio do professor. Alguns tópicos poderão ficar reservados para trabalho autónomo, fora das horas de contacto, sendo depois discutidos em aula ou posteriormente no projeto final. Utilizam-se metodologias de ensino mais prático, com ferramentas digitiais adequadas e atuais (softwares adequados), tal como o mercado de desenvolvimento de software requerem.
  • LínguaLanguage
    Português
  • TipoType
    Semestral
  • ECTS
    6
  • NaturezaNature
    Obrigatório
  • EstágioInternship
    Não