Programming II
- Details
- Category: Discipline
- Não
- The Programming II course focuses on web development, providing students with fundamental knowledge and skills for creating dynamic web applications. Using HTML, CSS, and Python/Django, students will learn to structure, style, and program interactive websites, strengthening essential frontend and backend development practices. The course falls within the area of programming and software engineering, covering the development and maintenance of web applications, frotend and backend, with a focus on creating responsive interfaces, database integration, and the implementation of Information Systems, applying good programming and security practices. This course unit is essential in the study cycle, as it equips students with fundamental skills for the digital market and information management on the web.
- Semestral
Descrição
Data limite
Ponderação
Observações
Projecto de grupo
22-06-2026
70%
Projecto tem 3 entregas ao longo do semestre
Detalhes abaixoDefesa
22-06-2026
15%
Defesa em grupo, mas com avaliação individual Trabalhos individuais
(em aula ou em casa)Vários
15%
Web design 20% N/D
Após aula 4Desenho de página Implementação com HTML e CSS Site dinamico com JS 35% N/D
Após aula 9Eventos e DOM Formulários e validação Armazenamento local Integração com API Boas práticas e testes Entrega / Avaliação 45% N/D
Após aula 15Gestão de utilizadores e autenticação Diferenciação de perfis de utilizador Controlo de sessões Ambiente multi-utilizador Persistência de dados com Base de Dados WebApp Os trabalhos de grupo são desenvolvidos em plataforma Docker, em modelo uniforme disponibilizado no início do semestre. Os alunos são incentivados a colocar os trabalho na plataforma GitHub para facilitar o acesso e interacção com o docente. Na entrega final, apenas será entregue código fonte, submetido em plataforma Moodle
- Introduction to Web Development Frontend, backend, HTTP concepts and client-server model. Frontend Languages: HTML, CSS, and JavaScript Page structuring, responsive design, and accessibility. Backend Languages: Python Python in Web development Variables, operators, control structures Best practices. Functions and Data Handling Functional programming for the web Data types Data handling and structures Code organization. Forms and User Interaction Interaction methods: POST and GET. Data validation and sanitization Data persistence Sessions and Cookies Authentication, content personalization, and security. Files and Directories Reading, writing, uploading, and organizing dynamic content. Modular Programming Use of includes and require for code reuse. Security Prevention of code injection, XSS, and CSRF. Practical Project Development of a dynamic and secure web application.
- The curricular unit Programming II aims to develop solid knowledge in web development in students, enabling them to create dynamic applications using HTML, CSS, and Python. Students will acquire skills in structuring and styling web pages, implementing interactivity, managing databases, and integrating dynamic components. In addition, they will be able to apply good programming practices, security, and optimization, ensuring the scalability and efficiency of applications. The CU also promotes problem-solving in information systems development, integratig functionality and data presentation to end users (frontend) and the development of programming logic and data access and manipulation (backend). Upon completion, students will have the aptitude to design, develop, and maintain functional, interactive, and secure websites and web applications, consolidating the link between theory and practice in a professional context.
- Mandatory
- The curricular unit of Programming II adopts innovative methodologies to optimize the teaching-learning process, combining theory and practice in dynamic approaches. It uses project-based learning, built throughout the semester and incremented with each new content, where students develop real-world web applications, promoting autonomy and problem-solving. The hands-on methodology encourages students to apply the concepts and languages addressed from the very beginning. The use of interactive classes with practical challenges stimulates active participation, while collaborative tools allow continuous review and feedback. Learning is complemented by digital resources and tools widely used in the industry (e.g., GitHub), encouraging engagement, collaborative work, and consolidating knowledge. These strategies ensure teaching aligned with market demands, preparing students for real challenges in web development.
- Português
- Flanagan, D. (2020). JAVASCRIPT : the Definitive Guide. O'Reilly Media, Inc. (ISBN: 978-1491952023) Zelle, J. (2024). Python Programming: An Introduction to Computer Science, 4th Edition. Franklin, Beedle & Associates (ISBN: 978-1590282977) Vincent, W. (2024). Django for Beginners, 5th Edition. Still River Press (ISBN: 978-1735467269) Mele, A. (2024). Django 5 By Example, 5th Edition. Packt Publishing (ISBN: 978-1805125457)
- 4
- 0
- 5
- 1
- IPLUSO6030-13151
- Programming II
- 13151
- 6030
- Information Systems Management