Instance: 2020/2021 - 2S
Cycles of Study/Courses
Teaching Staff - Responsibilities
Teaching - Hours
|Theoretical and practical :
Last 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
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)
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.
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.
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.
Distributed evaluation with final exam
Amount of time allocated to each course unit
|Elaboração de projeto
|Frequência das aulas
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).
See grade calculation above.