Laboratório de Computadores
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Ciência de Computadores |
Ocorrência: 2018/2019 - 2S 
Ciclos de Estudo/Cursos
Língua de trabalho
Português
Objetivos
Com esta unidade curricular pretende-se expor os estudantes aos principais conceitos básicos da utilização de uma computadores, e em particular de ao ambiente Linux. A unidade curricular permitirá reforçar os conhecimentos adquiridos no primeiro semestre em unidades como Introdução aos Computadores e Programação Imperativa.
Resultados de aprendizagem e competências
Os estudantes deverão sentir-se confortáveis num ambiente Unix/Linux e ser capazes de:
1. utilizar um ambiente de linha de comandos assim como a IG;
2. escrever scripts capazes de automatizar tarefas de adminstração e de gestão do sistema;
3. Implementar programas em C utilizando de forma avançada apontadores e estruturas.
4. desenvolver projectos de software a partir de uma especificação multi-tarefa e aberta;
5. entender os desafios fundamentais na construção de um projeto de software.
Modo de trabalho
Presencial
Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)
Os estudantes terão frequentado as UCs de Introdução aos Computadores e Programação Imperativa e deverão estar a frequentar/ter frequentado a UC de Estrutura de Dados, garantindo-se assim
- conforto mínimo na utilização de um computador
- experiência com pelo menos uma linguagem de programação.
Programa
- Introdução à bash
- tarefas básicas na linha de comando
- manipulação de ficheiros
- comandos avançados
- composição de ferramentas
- programação em C utilizando estruturas e apontadores
- organização de um projecto de software, tentando-se salientar:
- programa completo, com componentes diferenciados
- separação de I/O e uma iniciação ao conceito de protocolo
- programa vs processo
- comunicação de processos básica
Bibliografia Obrigatória
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
Bibliografia Complementar
Robbins Arnold;
UNIX in a nutshell. ISBN: 978-0-596-10029-2
Métodos de ensino e atividades de aprendizagem
A UC é organizada em aulas de laboratório:
- resolução de problemas, acompanha por alguma exposição pelo professor;
- projeto orientado para trabalho de grupo autónomo.
Será disponibilizada uma plataforma de validação automática de programas através de testes unitários, na qual deverão ser submetidas componentes do projeto proposto.
Tipo de avaliação
Avaliação distribuída sem exame final
Componentes de Avaliação
Designação |
Peso (%) |
Trabalho laboratorial |
100,00 |
Total: |
100,00 |
Componentes de Ocupação
Designação |
Tempo (Horas) |
Elaboração de projeto |
60,00 |
Estudo autónomo |
15,00 |
Frequência das aulas |
30,00 |
Total: |
105,00 |
Obtenção de frequência
É obrigatória a frequência de pelo menos 75% aulas.
É também obrigatória a realização das seguintes compontentes:
- Tarefas de auto-avaliação propostas (componentes do projeto), com sucesso em em pelo menos 75% (ponderado) das tarefas;
- Dois testes (avaliação do projeto).
Fórmula de cálculo da classificação final
A classificação final será determinada pelos resultados de dois testes, T1 e T2, em que se avaliará o trabalho realizado no âmbito do projeto.
NOTA = 0.35*T1 + 0.65*T2
Melhoria de classificação
Não previsto, dado a avaliação ser essencialmente contínua.