-
Apresentação
Apresentação
Nesta UC pretende-se desenvolver conhecimentos sobre conceitos fundamentais de arquitectura de computadores e de programação procedimental utilizando a Linguagem de programação C. Os alunos deverão também desenvolver competências no âmbito da criação e implementação de algoritmos e entender de forma detalhada e aprofundada a organização e funcionamento da memória de um computador. Deverão ainda aquirir bases sobre controlo de versões utilizando o git. As competencias desenvolvidas nesta UC permitem uma compeensão do que está na base de linguagens de programação de alto nível e de como fazer um programa eficiente e que faça uma boa gestão da memória.
-
Disciplina do curso
Disciplina do curso
-
Grau | Semestres | ECTS
Grau | Semestres | ECTS
Licenciado | Semestral | 6
-
Ano | Natureza | Lingua
Ano | Natureza | Lingua
1 | Obrigatório | Português
-
Código
Código
ULHT1075-2279
-
Pré-requisitos e co-requisitos
Pré-requisitos e co-requisitos
Não aplicável
-
Estágio Profissional
Estágio Profissional
Não
-
Conteúdos Programáticos
Conteúdos Programáticos
- Módulo 0 - Unidade Curricular
- Objectivos de aprendizagem
- Módulo 1 - Arquitectura de computadores
- Computadores, sistemas operativos, aplicações e programação.
- Sistemas de numeração: conversão entre bases; operações aritméticas entre diferentes bases.
- Modulo 2 - Sistemas de Numeração
- Conversões entre bases.
- Operações Aritméticas entre diferentes bases.
- Módulo 3 - Linux
- Terminal, consola bash, e principais comandos.
- Manipulação de ficheiros
- Módulo 4 - Controlo de versões com Git
- Configuração, noções básicas, ramos/merges, remotos, formas de colaboração, rebase, tags; LFS.
- Módulo 5 - Sintaxe Markdown
- Documentação e formatação em texto simples.
- Modulo 6 - Introdução à programação em Python
- Variáveis, Tipos de dados, Condições e Ciclos, Funções.
- Modulo 7 - Uso de fluxogramas para representar programas simples (com variáveis, condições, ciclos e funções).
- Módulo 0 - Unidade Curricular
-
Objetivos
Objetivos
-
Noções básicas do funcionamento de um computador: CPU, GPU, memória, cache, sistema operativo, sistema de ficheiros e linha de comandos
-
Geração de documentação com Markdown
-
Controlo de versões com Git
-
Princípios básicos de programação com Python e fluxogramas
-
-
Metodologias de ensino e avaliação
Metodologias de ensino e avaliação
Esta UC inclui aulas teo¿ricas-pra¿ticas e práticas laboratoriais.
Os exemplos utilizados nesta unidade curricular servem o propósito de instruir os alunos sobre práticas implementadas e testadas na indústria. Os alunos irão ter contacto com vídeos, apresentações e exercícios de modo a colocar em prática os conceitos lecionados.
A enfase está na avaliação contínua de conhecimentos, de forma a reforçar as aprendizagens.
-
Bibliografia principal
Bibliografia principal
-
Cone, M. (2018). The Markdown Guide. Independently published.
-
Chacon, S. & Straub, B. (2014). Pro Git (2nd Edition). Apress.
-
Matthes, E. (2019). Python Crash Course: A Hands On Project Based Introduction To Programming, 2nd Edition. No Starch Press.
-
-
Horário de Atendimento
Horário de Atendimento
-
Mobilidade
Mobilidade
Não