You need to activate javascript for this site.
Menu Conteúdo Rodapé
  1. Home
  2. Courses
  3. Computer Science and Engineering
  4. Programming Laboratories

Programming Laboratories

Code 14361
Year 1
Semester S1
ECTS Credits 6
Workload PL(30H)/T(30H)
Scientific area Informatics
Entry requirements there are no pre-requisites
Learning outcomes The objectives of this Course Unit are to: (i) introduce basic computer science and engineering concepts, aiming to uniformize the knowledge of new students; (ii) approach, configure and explore programming and development environments; (ii) provide a structure and template for technical reports; and (iv), develop project management and programming skills, namely version control, build automation tasks, good practices in programming and producing documentation.
It is intended to motivate the development sense of rigor and responsibility towards the academic course and work. At the end of the course unit, the student should be able to: configure the work environment, and handle development and profiling tools with ease; manage versions of a software project; beacquanted with the command line environment and build programming projects; debug programs; and prepare high quality technical reports.
Syllabus 1. Introduction to Computer Science and Engineering
2. Elaboration and Structuring of Technical Reports
3. Introduction to the Command Line Environment
4. Usage of Programming Tools, Integrated Development Environments and Compilation Management
5. Planning and Implementation of a Programming Project
6. Version Control in Programming Projects
7. Good Programming Practices
8. Automatic Generation of Documentation
9. Debugging and Profiling Programs
Main Bibliography Pedro R. M. Inácio, Tiago Roxo e Tiago M. C. Simões, Introdução a Conceitos Base de Engenharia Informática - Apontamentos de Apoio e Guias Laboratoriais de Laboratórios de Programação, UBI - Universidade da Beira Interior: Serviços Gráficos, September 2021, ISBN: 978-989-654-785-1. Available:
Scott Chacon and Ben Straub, “Pro Git (2nd edition),” Apress, Berkely, CA, USA, 2014. [Online.] Last Access: April 9, 2017. Available:
Tobias Oetiker, Hubert Partl, Irene Hyna, and Elisabeth Schlegl, “The Not So Short Introduction to LaTeX,” 2008. [Online.] Last Access: April 9, 2017. Available:
P. Deitel and H.M. Deitel, “C: How to Program (6th edition),” Prentice Hall, 2009
Brian W. Kernighan and Rob Pike, “The Practice of Programming,” Addison-Wesley, 1999. ISBN 0-201-61586-X.
Teaching Methodologies and Assessment Criteria The contents of this delivered unit are exposed in theoretical classes (expository method evolving to immediate practice of concepts, 2 hour of weekly contact) and practiced in practical classes (2 hours of weekly contact) in which the programmed learning method will be utilized. The contents and the objectives of the class are presented in the theoretical classes with an hand-on approach. Practical exercises are performed in the practical classes, while pursuing the objectives set out in the theoretical class. Practical classes are usually governed by laboratory guides that students execute on computers.

Evaluation is performed resorting to three main elements:
- one written tests for knowledge evaluation (worth 40% of the final grade each);
- one practical test into 3/4 of the semester (worth 25% of the final grade);
- one practical team work with technical report and a presentation (worth 35% of the final grade).
Language Portuguese. Tutorial support is available in English.
Last updated on: 2024-01-18

The cookies used in this website do not collect personal information that helps to identify you. By continuing you agree to the cookie policy.