Introdução à Programação e Resolução de Problemas

Ano
1
Ano lectivo
2017-2018
Código
01000043
Área Científica
Informática
Língua de Ensino
Português
Modo de Ensino
Presencial
Duração
Semestral
Créditos ECTS
6.0
Tipo
Obrigatória
Nível
1º Ciclo - Licenciatura

Conhecimentos de Base Recomendados

Conhecimentos básicos de matemática. Aptidões de pensamento lógico e abstração.

Métodos de Ensino

Esta UC está estruturada em 2 aulas semanais, sem distinção entre T e TP. Nas aulas são apresentados os conceitos e promovida a respectiva prática. O raciocínio algorítmico é primeiro exercitado com recurso à resolução de problemas associados a sistemas informáticos e sem uso de uma linguagem de programação.  Os conceitos ligados a programação são exemplificados com pequenos excertos de código, sendo a sua exercitação dirigida à resolução de problemas. O número de alunos é mais baixo que o de uma aula teórica típica, o que permite um acompanhamento da progressão dos alunos mais personalizado.

Resultados de Aprendizagem

Aprender os princípios básicos de programação e gestão de dados num contexto de resolução de problemas. São exploradas as vertentes algorítmica e de modelação e manipulação de dados, sendo ainda introduzido contexto sobre sistemas informáticos em geral.

É também objetivo a aquisição das seguintes competências principais (segundo os descritores de Dublin):

- Conhecimentos de informática relativos ao âmbito do estudo, competência para resolver problemas, aprendizagem autónoma, competência em aplicar na prática os conhecimentos teóricos, trabalho em grupo;

e das seguintes competências secundárias:

- Competência em análise e síntese, raciocínio crítico, comunicação oral e escrita, relações interpessoais.

Estágio(s)

Não

Programa

1 Introdução aos computadores

1.1 Noções gerais sobre computadores e internet

1.2 Numeração e representação de dados

2. Sistemas operativos

2.1 Processos

2.2 Memória e armazenamento

3. Sistemas distribuidos

3.1 Conceitos base. HTTP e Email

4. Resolução de problemas e algoritmos em python

4.1 Noções básicas sobre resolução de problemas e lógica

4.2 Introdução ao python e tipos de dados

4.3 Instruções de controlo condicionais

4.4 Instruções de controlo: ciclos

4.5 Cadeias de caracteres

5. Bases de dados

5.1 Introdução e modelo de dados relacional

5.2 Diagramas de Entidade-Relacionamento

5.3 Consulta e manipulação de dados

6. Python e bases de dados

Docente(s) responsável(eis)

Bernardete Martins Ribeiro

Métodos de Avaliação

Avaliação
Avaliação e defesa oral de 3 exercícios de programação: 12.5%
Avaliação e defesa oral de um mini-projeto: 17.5%
Exame: 70.0%

Bibliografia

- N. Dale and J. Lewis, “Computer science illuminated,” Jones & Bartlett Pub, 2006.

- Jon Barwise e John Etchemendy, “Language, Proof and Logic,” CSLI Publications, 1999.

- Ernesto Costa, “Introdução à Programação e Resolução de Problemas com Python”, DEI, 2011

- Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer D. Widom, “Database Systems: The Complete Book,” Prentice Hall, 2001