filmeu

Disciplina Programação Web

  • Apresentação

    Apresentação

    Esta Unidade Curricular pretende dar formação na área da programação Web em geral, e em particular no desenvolvimento de aplicações Web back-end, providenciando uma visão global do desenvolvimento moderno para a Web. É ensinado o desenvolvimento de aplicações empresariais seguindo o padrão de desenho model-view-control, recorrendo à linguagem Python e a Web framework Django. Pretende-se estimular a criatividade e imaginação no desenvolvimento de aplicações inovadoras que sejam eficientes, escaláveis e fáceis de modificar por um lado, e que ofereçam uma boa experiência para o utilizador. Esta é uma UC fundamental para qualquer profissional da área da informática, pois fornece um conjunto de conhecimentos e ferramentas que serão essenciais em projetos empresariais em que virão a estar inseridos.
  • Conteúdos Programáticos

    Conteúdos Programáticos

    1: Programação com Python para Web (3 semanas) Fundamentos do Python (sintaxe, estruturas de dados, funções, OOP) Módulos e Pacotes em Python.  Manipulação de Dados (JSON, CSV, XML) Webscraping com BeautifulSoup e regex. 2. Desenvolvimento de Aplicações Web com Django (6 semanas) Django Web framework  Modelação de dados e integração com Bases de Dados (BD) Operações CRUD em BSs com ORM do Django Aplicações Web com Django (urls, views, models, templates) Linguagem Template do django Bootstrap e estilização de interfaces Autenticação e autorização de utilizadores (OAuth) 3. Desenvolvimento de APIs e CI/CD (5 semanas) Testes unitários (unittest) e de integração (Selenium) Ambiente de desenvolvimento e de produção (CI/CD, GitHub, Docker) Desenvolvimento de APIs RESTful com Django ninja Documentação e teste de APIs com Swagger Versionamento e monitorização de APIs Serialização e validação de dados Autenticação e autorização de APIs (JWT, Oauth)
  • Objetivos

    Objetivos

    Entender o funcionamento da Internet e da Web. Compreender os princípios da programação Web e seus principais padrões de desenho. Aplicar estes conceitos usando Python e Django.  Arquitetar aplicações Web e APIs RESTful eficientes, de fácil manutenção, que corram na Web. Avaliar as diferentes estratégias de desenho, sabendo escolher a abordagem que mais se adequa ao contexto. Ser capaz de construir e implantar na cloud aplicações Web e APIs RESTful complexas e criativas, totalmente funcionais (full stack).
  • Metodologias de ensino

    Metodologias de ensino

    Utilização de materiais pedagógicos diversificados, desde slides, resumos, video-tutoriais curtos, enunciados em GitBook, exemplos de projetos no Github. Realização semanal de exercícios e quizzes de avaliação em plataformas de avaliação automática de código ou em papel. Desenvolvimento de 3 projetos, cujo desenvolvimento é acompanhado semanalmente nas aulas Realização pelo aluno de uma analise critica e reflexao sobre as tarefas desempenhadas, dificuldades encontradas, e como usou IA. Realização pelo aluno de video-tutoriais a explicar o seu projeto. Avaliação dos projetos e sugestão de melhorias por pares (colegas), desenvolvendo o pensamento crítico. Uso do GitHub como repositório de projetos, e lançamento em produção através de práticas de CI/CD.  Alojamento em ambiente de produção na cloud das aplicações Web desenvolvidas, permanecendo online, constituindo uma forma de disseminação de trabalhos realizados.  
  • Bibliografia principal

    Bibliografia principal

    PORTELA, Filipe, QUEIRÓS, Ricardo. Introdução ao desenvolvimento moderno para a Web. FCA. 2018. ISBN: 978-972-722-897-3 VASCONCELOS, José Braga de, Python: Algoritmia e Programação Web. FCA. 2015. ISBN: 978-972-722-813-3 VINCENT, William S., Django for Beginners 3.1: build websites with Python & Django, 2020. ISBN-13: 978-1735467207  
  • Avaliação

    Avaliação

    • Avaliação continua:
      • Componente Teórica (CT):
        • Quizzes semanais na aula (Peso: 5%)
        • CT1: Teste Python (Peso: 15%. Nota mínima: 9,5 valores)
        • CT2: Teste Django (Peso: 15%. Nota mínima: 9,5 valores)
        • CT3: Teste APIs (Peso: 15%. Nota mínima: 9,5 valores)
      • Componente Prática (CP):
        • CP1: Quizzes semanais na aula e trabalhos (Peso: 25%)
        • CP2: Projeto Django (com defesa sem consulta. Peso: 15%. Nota mínima: 9,5 valores)
        • CP3: Projeto APIs (com defesa sem consulta. Peso: 15%. Nota mínima: 9,5 valores)
    • Avaliação época de recurso/especial: 
      • realização das avaliações CT (CT1, CT2 ou CT3) ou CP (CP1, CP2 ou CP3) a que não teve aprovação. Nota mínima: 9,5.
      • Para se apresentar em recurso ou época especial, é requisito obrigatório entregar 2 dias antes da avaliação, a resolução em papel das fichas de trabalho da CT/CP, publicadas na altura. 

    Aprovação à disciplina:

    • A disciplina está organizada em 3 módulos: Python, Django e API. Cada um tem uma componente teórica (CT) e prática (CP). 
    • Existem um total de 6 componentes de avaliação, a aprovação na disciplina requerendo a aprovação às seis componentes (nota minima de 9,5 valores em cada uma destas).
INSCRIÇÃO AVULSO
Lisboa 2020 Portugal 2020 Small financiado eu 2024 prr 2024 republica portuguesa 2024 Logo UE Financed Provedor do Estudante Livro de reclamaões Elogios entidade signataria