Computer Laboratory
Keywords |
Classification |
Keyword |
OFICIAL |
Computer Science |
Instance: 2020/2021 - 2S
![Requerida a integração com o Teams Ícone do Teams](/fcup/pt/imagens/Spacer)
Cycles of Study/Courses
Teaching language
Portuguese
Objectives
This unit aims at providing key basic technical concepts when using and programming computers, namely in an Unix/Linux environment . It strengthens the knowledge acquired inprevious units, such as Introduction to Computers and Imperative Programming.
Learning outcomes and competences
The student should use an Unix/Linux environment effectively:
1. use a CLI environment;
2. be able to write scripts that automatize data processing tasks;
3. implement C programs with an advanced use of pointers and structures;
4. develop a software project from a specification;
5. understand the fundamentals of the development of a software project.
Working method
Presencial
Pre-requirements (prior knowledge) and co-requirements (common knowledge)
We would expect the students to have attended "Introdução aos Computadores" and "Programação Imperativa", and they should be participating, or have experience in Data Structures.
Program
- Introduction to bash:
- basic command line tasks;
- file manipulation;
- advanced commands;
- tool composition.
- Programação em C utilizando estruturas e apontadores;
- File manipulation in C;
- Development of software projects.
Mandatory literature
K.N.King; C programming: a modern approach (2nd edition), 2008. ISBN: 978-0-393-97950-3
Newham Cameron;
Learning the bash shell. ISBN: 0-596-00965-8
Complementary Bibliography
Brian W. Kernighan;
The practice of programming. ISBN: 9780201615869
Robbins Arnold;
UNIX in a nutshell. ISBN: 978-0-596-10029-2
Teaching methods and learning activities
This component is organised as labs:
- small task resolution;
- project execution.
An automatic program validation platform will be made available. Components of the proposed projects shall be submited in this plataform.
Evaluation Type
Distributed evaluation without final exam
Assessment Components
designation |
Weight (%) |
Trabalho laboratorial |
100,00 |
Total: |
100,00 |
Amount of time allocated to each course unit
designation |
Time (hours) |
Elaboração de projeto |
53,00 |
Frequência das aulas |
28,00 |
Total: |
81,00 |
Eligibility for exams
The following components is mandatory:
- Self-assessment tasks (project components).
- Two tests (project evaluation).
Calculation formula of final grade
The final grade is determined by the the weighted average of
- Class activities (A);
- two tests (T1, T2) for the project evaluation:
GRADE = 0.15 A + 0.425 (T1 + T2)
If it is not possible to take the tests in person, they will be replaced by a final exam.
Special assessment (TE, DA, ...)
Assement follows the same criteria described above as for ordinary students.
Classification improvement
The classification improvement is given by the mark of an exam for the project evaluation.
Observations
Classes and the evaluation may be adjusted according to the evolution of the COVID-19 pandemic.
Jury of the Curricular Unit: Sérgio Crisóstomo and Vitor Costa.