Computer Laboratory
Keywords |
Classification |
Keyword |
OFICIAL |
Computer Science |
Instance: 2019/2020 - 2S
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 a software project.
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 project 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
It is mandatory to attend at least 75% of the given classes.
Moreover, the realization of the following components is mandatory:
- Self-assessment tasks (project components), with success in at least 75% (weighted) of the tasks;
- Three tests (project evaluation).
Calculation formula of final grade
The final grade is determined by the the weighted average of three tests (project evaluation):
GRADE = (T1 + T2 + T3)/3
Classification improvement
Not applicable.