
Introdução à Programação
Código
10637
Unidade Orgânica
Faculdade de Ciências e Tecnologia
Departamento
Departamento de Informática
Créditos
9.0
Professor responsável
António Maria Lobo César Alarcão Ravara, Luís Manuel Marques da Costa Caires
Horas semanais
6
Total de horas
73
Língua de ensino
Português
Objectivos
Saber
- O significado das várias construções de programação incluídas no fragmento coberto da linguagem Java.
- Construir uma pequena aplicação no fragmento coberto a partir de uma especificação informal, mas rigorosa, escrita em Português, e usando a metodologia definida na disciplina.
- Quais os componentes e ferramentas básicas de um ambiente de desenvolvimento de software (editor, compilador, etc) e qual a sua função.
Fazer
- Desenvolver programas de pequena dimensão, bem organizados e obedecendo a um certo número de convenções.
- Conseguir projectar e escrever correctamente algoritmos simples.
- Ler e explicar / simular mentalmente a funcionalidade de fragmentos de código escritos no fragmento coberto da linguagem Java.
- Utilizar correctamente, ao nível esperado, as ferramentas de programação, assim como interpretar os seus resultados (mensagens de erro, etc).
- Realizar, em grupo, um mini-projecto de desenvolvimento de software, integrando as várias competências transmitidas.
Soft-Skills
- Desenvolver hábitos de trabalho e de cumprimento de prazos.
- Desenvolver a preocupação com o rigor, e com a execução sistemática de planos de trabalho e métodos previamente determinados.
- Desenvolver competências de organização de trabalho em grupo.
Conteúdo
1. Computadores e programas 2. Objectos e operações 3. Classes e tipos de dados básicos 4. Manipulação de estado 5. Mecanismos de decisão 6. Estrutura de aplicações 7. Interacção (I/O) 8. Mecanismos de iteração 9. Manipulação de ficheiros 10. Aplicações com várias classes 11. Vectores e algoritmos relacionados 12. Ordenação e pesquisa 13. Metodologias de desenvolvimento de software
Bibliografia
Cay Horstmann, Java Concepts, 6th edition, Wiley, 2009.
Walter Savitch, Java: An Introduction to Computer Science and Programming, 4th edition, Prentice-Hall, 2005.
David J. Eck, Programming Using Java, Online book, http://math.hws.edu/javanotes, 2004.
Método de avaliação
A avaliação é composta por três componentes: teórico-prática, laboratorial e sumativa.
A componente teórico-prática é composta por dois testes (T1 e T2) ou um exame (E), e a componente laboratorial por dois trabalhos práticos (TP1 e TP2). A componente sumativa corresponde à participação do aluno nas aulas (PA) e poderá incluir: assiduidade, participação durante as aulas e entrega de trabalhos de aula. No caso dos trabalhadores-estudantes que não possam ir a nenhuma aula prática, a componente sumativa é substituida por um terceiro trabalho prático.
Todos os elementos de avaliação terão uma nota na escala de 0 a 20 valores.
Para obter frequência na cadeira, a média pesada dos trabalhos práticos (TP1 e TP2) deve ser igual ou superior a 9.5 valores em 20.
A nota final é calculada por arredondamento às unidades:
- em Avaliação contínua: 0.25*T1 + 0.3*T2 + 0.15*TP1 + 0.2*TP2 + 0.1*PA
- em Época de Recurso: 0.55*E + 0.15*TP1 + 0.2*TP2 + 0.1*PA
Para aprovar na cadeira a nota final deve ser superior ou igual a 9.5, ter obtido frequência e a nota do 2º teste (T2) ou do exame (E) deve ser igual ou superior a 8.5 valores em 20. Para as melhorias usa-se a mesma fórmula da época de recurso.
Na época especial, a nota final é a nota do exame.