Objetivos / Competências
O1. Aplicar mecanismos abstratos de resolução de problemas
O2. Especificar algoritmos para a resolução de problemas
O3. Definir e utilizar adequadamente estruturas de dados
O4. Aplicar regras de programação estruturada
O5. Implementar programas numa linguagem de programação de alto nível
Conteúdos programáticos resumidos
1. Introdução à programação e seus objetivos.
2. Conceitos sobre teoria de programação:
-Metodologia de programação;
-Formulação do algoritmo e representação;
-Componentes fundamentais de um algoritmo;
-Estudo das diversas estruturas de controlo;
-Exemplos de algoritmos.
3. Programação numa linguagem de alto nível:
-Constantes, variáveis e conversões;
-Instruções básicas;
-Expressões, operadores e precedência;
-Estudo das diversas estruturas de controlo.
4.Estruturação com subprogramas:
-Subprogramas;
-Funções, procedimentos e modo de chamada;
-Passagem de parâmetros por referência e por valor;
-Âmbito e tempo de vida das variáveis.
5.Tipos estruturados:
-Arrays: conceito e declaração;
-Operações com arrays;
-Strings: alguns métodos e propriedades;
6. Listas e dicionários
7. Recursividade:
-Definição de programa recursivo;
-Vantagens e inconvenientes da recursão.
Metodologias de ensino e critérios de avaliação
Aulas de carácter, essencialmente, prático, com apelo constante à participação, desenvolvimento do espírito crítico e de iniciativa, e de procura de excelência nos trabalhos realizados.
Avaliação:
- Avaliação contínua (60%). Inclui participação presencial nas aulas e realização de trabalhos durante a aula
- Prova escrita (40%). Nota mínima de 8 em 20 valores.
Bibliografia resumida
- Diapositivos que cobrem a totalidade dos conteúdos lecionados
1. Fichas de trabalho para apoio das aulas
2. ARNOLD, Ken, GOSLING, James, HOLMES, David (2006) The Java programming language (fourth edition) Upper Saddle River : Addison-Wesley COTA: 004.43 JAVA ARN.
3. MENDES, António José, MARCELINO, Maria José (2012) Fundamentos de Programação em Java (4ª edição). FCA.
4. CARVALHO, Adelaide (2013) Exercícios de Java - Algoritmia e Programação Estruturada (2ª edição). FCA