Programming Laboratory
Keywords |
Classification |
Keyword |
OFICIAL |
Computer Science |
Instance: 2019/2020 - 2S
Cycles of Study/Courses
Teaching language
Portuguese
Objectives
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
Presencial
Pre-requirements (prior knowledge) and co-requirements (common knowledge)
Imperative programming and data structures
Program
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
Kernighan Brian W.;
The practice of programming. ISBN: 9780201615869
Miller Bradley N.;
Problem solving with algorithms and data structures using Python. ISBN: 978-1-59028-053-9
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 |
60,00 |
Trabalho laboratorial |
40,00 |
Total: |
100,00 |
Amount of time allocated to each course unit
designation |
Time (hours) |
Elaboração de projeto |
1,00 |
Estudo autónomo |
2,00 |
Frequência das aulas |
3,00 |
Trabalho laboratorial |
1,00 |
Total: |
7,00 |
Eligibility for exams
Exam with minimum mark of 8/20 + courseworks
Calculation formula of final grade
40% * assignments + 60% * final exam. Final exam with minimum mark of 8/20.