Programação Estruturada
- Detalhes
- Categoria: Disciplina
- Não
- Os ciberataques podem assumir muitas formas, usando técnicas que variam desde a engenharia social até à utilização de programas concebidos especificamente para esse efeito. Para um profissional de cibersegurança, os conhecimentos na área da programação são fundamentais para identificar vulnerabilidades nas aplicações, compreender de que forma estas podem ser exploradas, compreender os objetivos dos programas, e mesmo perceber se são, ou não, maliciosos. É nesse contexto que esta UC se debruça sobre o tema da programação de computadores, abordando os conceitos básicos da programação estruturada presentes na generalidade das linguagens de programação. A UC usa a linguagem C. Criada em 1972, e usada para desenvolver os Sistemas Operativos mais populares, continua a ser a linguagem de eleição na área da programação de sistemas. Dado o seu sucesso, influenciou ainda um número significativo de linguagens mais recentes, cuja aprendizagem pode ser potenciada pelos conhecimentos aqui adquiridos.
- Semestral
Descrição
Data limite
Ponderação
Trabalhos práticos e mini-questionários
20-06-2026
60%
Testes escritos
20-06-2026
40%
Exame de Recurso
11-07-2026
100%
As componentes.prática (trabalhos e questionários) e teórica (testes) são requeridas em todas as épocas de avaliação
Assim, a época de recurso pode consistir em:
- Exame escrito: para quem não teve aproveitamento na componente teórica.
- (Re)Submissão dos trabalhos: para quem não teve aproveitamento na componente prática.
- Exame + (re)submissão dos trabalhos: para quem não teve aproveitamento nem na componente teórica nem na componente prática.
- Conceitos Básicos Arquitetura computacional básica Algoritmos Linguagens de programação como forma de expressar algoritmos Programas Desenvolvimento de programas Etapas do desenvolvimento Ferramentas de desenvolvimento Ambientes de desenvolvimento integrados A linguagem de programação C Estrutura dos programas Elementos da linguagem Tipos, constantes e variáveis Expressões e atribuições Entradas e saídas na consola Programação estruturada Instruções de seleção Instruções de repetição Instrução composta Funções Visibilidade e tempo de vida das variáveis Vetores e Matrizes Cadeias de caracteres Apontadores Argumentos de funções passados por valor e por referência Entradas/saídas com ficheiros Estruturas Biblioteca de funções standard do C Programas em C Implementação de algoritmos simples Estrutura procedimental de um programa Metodologias de desenvolvimento
- Após concluir esta UC os alunos deverão: Compreender o conceito de algoritmo, nomeadamente quando aplicado à programação de computadores. Ter adquirido competências no domínio da conceção de algoritmos para a resolução de problemas de pequena e média complexidade. Ter aprendido os conceitos básicos associados à programação de computadores. Estar familiarizados com a utilização de uma linguagem de programação, e ter adquirido experiência prática na leitura e escrita de programas. Estar familiarizados com as ferramentas de desenvolvimento de software mais comuns e ter experiência de utilização de um ambiente de desenvolvimento integrado para a escrita, teste e depuração de programas. Entender a importância da documentação, estilo de escrita e, em geral, da adoção de convenções que garantam a legibilidade dos programas. Ter adquirido capacidades para a utilização duma linguagem de programação para a resolução de problemas específicos com recurso a um computador.
- Obrigatório
- Utilização da metodologia de aprendizagem baseada em projetos, através da qual os alunos são estimulados a desenvolver autonomamente soluções para problemas que lhes são colocados e que abordam a generalidade dos tópicos lecionados. Esta metodologia prevê a realização de um "produto", que representa uma solução para o problema proposto.
- Português
- Kernighan, B. and Ritchie, D. - The C Programming Language. 2nd Edition. Prentice Hall, 1988.ISBN: 9780131103627. Marques de Sá, J. P. - Fundamentos de Programação Usando C. FCA, 2004. ISBN:9789727224753.
- 4
- 0
- 6
- 1
- IPLUSO6130-22254
- Programação Estruturada
- 22254
- 6130
- Cibersegurança (T) (IPLUSO)