Go to:
You are in:: Start > CC2013
Site map
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Programming Laboratory

Code: CC2013     Acronym: CC2013     Level: 200

Classification Keyword
OFICIAL Computer Science

Instance: 2020/2021 - 2S Ícone do Moodle

Active? Yes
Responsible unit: Department of Computer Science
Course/CS Responsible: Master's Degree in Network and Information Systems Engineering

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
L:CC 34 Plano de estudos a partir de 2014 2 - 6 42 162
MI:ERS 88 Plano Oficial desde ano letivo 2014 2 - 6 42 162

Teaching Staff - Responsibilities

Teacher Responsibility
Michel Celestino Paiva Ferreira
João Paulo da Silva Machado Garcia Vilela

Teaching - Hours

Theoretical and practical : 3,00
Type Teacher Classes Hour
Theoretical and practical Totals 4 12,00
João Paulo da Silva Machado Garcia Vilela 6,00
Michel Celestino Paiva Ferreira 3,00
Francesco Renna 3,00
Mais informaçõesLast updated on 2021-02-11.

Fields changed: Calculation formula of final grade, Obtenção de frequência, Componentes de Avaliação e Ocupação, Bibliografia Obrigatória, Bibliografia Complementar, Fórmula de cálculo da classificação final, Obtenção de frequência, Componentes de Avaliação e Ocupação, Bibliografia Obrigatória, Bibliografia Complementar

Teaching language



Strengthening the knowledge of structured programming by developing medium dimension programming projects.

Learning outcomes and competences

After completing this unit, students should be able to:
- write a large software project
- use profiling tools
- use existing libraries based on API documentation
- develop modular programs with clearly documented interfaces between components
- use an integrated development environment (IDE)

Working method


Pre-requirements (prior knowledge) and co-requirements (common knowledge)

Imperative programming and data structures


Revisions on imperative programming: references, structures and unions. Memory alocation. Constructors. Lists, Trees, and the usual data structures. Programming in large. Makefiles. IDEs. Version control systems.

Object Oriented Programming: Classes, objects and packages. Arrays and strings. Visibility and acces modifiers. Constructors and encapsulation. Static methods and atributes. The Object class. Pitfalls of inheritance. 

Using exceptions for error handling. Throwing and catching exceptions. Checked vs. unchecked exceptions. Recomendations on the use of exceptions.

Mandatory literature

Thomas A. Standish; Data structures, algorithms, and software principles in C. ISBN: 978-0-201-59118-7
Robert Sedgewick; Algorithms in C. ISBN: 978-0-201-31452-6 1o v.

Complementary Bibliography

Kernighan Brian W.; The practice of programming. ISBN: 9780201615869

Teaching methods and learning activities

Demonstration classes combing exposition of concepts and methodologies and practical assigments in computer laboratories.

Evaluation Type

Distributed evaluation with final exam

Assessment Components

designation Weight (%)
Exame 50,00
Trabalho laboratorial 50,00
Total: 100,00

Amount of time allocated to each course unit

designation Time (hours)
Elaboração de projeto 70,00
Estudo autónomo 50,00
Frequência das aulas 42,00
Total: 162,00

Eligibility for exams

  • Minimum grade of 35% on projects

  • Minimum grade of 35% in exam

Note: both minimums should be met.

Class attendance is not recorded.

Calculation formula of final grade

Final grade will be based on assignment grade and exam grade, using the following expression:

(AG x 10 + EG x 10) / 20

  • EG = exam grade (0-20)

  • AG = assignment grade (0-20)

    • first assignment is worth 4 points

    • second assignment is worth 6 points

This applies for all the exams (normal, recourse, grade improvement or special term).

Classification improvement

See grade calculation above.
Recommend this page Top
Copyright 1996-2024 © Faculdade de Ciências da Universidade do Porto  I Terms and Conditions  I Acessibility  I Index A-Z  I Guest Book
Page created on: 2024-04-24 at 21:05:30 | Acceptable Use Policy | Data Protection Policy | Complaint Portal