Programação
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Programação |
Ocorrência: 2007/2008 - 2S
Ciclos de Estudo/Cursos
Língua de trabalho
Português
Objetivos
O aluno deverá completar e consolidar a aprendizagem de programação iniciada na disciplina Fundamentos da Programação com a linguagem Scheme, utilizando agora a linguagem C++. Os conceitos fundamentais desta linguagem serão apresentados, visando pôr em prática os conhecimentos da programação procedimental e da programação baseada em objectos.
A abordagem dos temas inicia-se com a programação com abstracções da biblioteca standard do C++ e finaliza com a programação com abstracções definidas pelo utilizador.
Programa
Programação com abstracções da biblioteca standard do C++: Um primeiro programa em C++; Breve introdução à biblioteca string do C++; Controlo de sequência - estruturas de selecção e repetição e operadores lógicos e de relação; Introdução aos vectores do C++; Abordagem inicial às classes; Organização dos programas e dados - funções e parâmetros, parâmetros por referência, qualificador const, compilação separada, organização dos dados com struct, gestão de excepções; Contentores sequenciais - acesso sequencial, iteradores, tipo list; Utilização da biblioteca de algoritmos do C++; Utilização de contentores associativos - pair, map;
Programação com abstracções definidas pelo utilizador: Funções genéricas; Definição de novos tipos - classes, funções membro (member functions), funções não-membro (nonmember functions), membros de dados (data members), protecção, funções de acesso (acessor functions), construtores, construtor por omissão, construtor com argumentos; Gestão de memória - apontadores, arrays, apontadores para funções, arrays de apontadores, argumentos da função main, gestão de memória automática, estática e dinâmica, new e delete.
Bibliografia Obrigatória
Koenig, Andrew;
Accelerated C++. ISBN: 0-201-70353-X
Bibliografia Complementar
Deitel, H. M.;
C++ how to program. ISBN: 0-13-185757-6
Lippman, Stanley B.;
C++ Primer. ISBN: 0-201-82470-1
Métodos de ensino e atividades de aprendizagem
• Aulas Teóricas: A exposição dos temas programáticos acompanhada pela resolução de casos.
• Aulas Teórico-Práticas: Desenvolvimento de uma série de projectos em C++ e avaliação do trabalho realizado pelos alunos, organizados em pequenos grupos (normalmente, de 2 alunos).
Software
Eclipse + CDT
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Aulas da disciplina (estimativa) |
Participação presencial |
70,00 |
|
|
Prova escrita (data provisória) |
Exame |
2,00 |
|
2008-06-18 |
Projecto 1 |
Trabalho escrito |
15,00 |
|
2008-03-29 |
Projecto 2 |
Trabalho escrito |
20,00 |
|
2008-04-19 |
Projecto 3 |
Trabalho escrito |
30,00 |
|
2008-05-17 |
|
Total: |
- |
0,00 |
|
Componentes de Ocupação
Descrição |
Tipo |
Tempo (Horas) |
Data Conclusão |
Estudo fora de aulas |
Estudo autónomo |
50 |
2008-06-06 |
|
Total: |
50,00 |
|
Obtenção de frequência
• AvD - No início das aulas teórico-práticas, os docentes organizam as turmas em grupos de 2 alunos (excepcionalmente, de 3). Durante o semestre, é apresentada uma série de 3 projectos que os grupos desenvolverão tanto nas aulas teórico-práticas, como fora das aulas. O docente avaliará o trabalho dos grupos pelo respectivo desempenho nas aulas e também pelo material que submeterão na página da disciplina. Para o último projecto da série, cada grupo apresentará um pequeno relatório e o projecto será defendido oralmente por elementos do grupo, escolhidos pelo docente.
• AvEx - Exame final, constituído por uma prova escrita individual, com consulta.
Condições para obtenção de frequência
Não exceder o limite de faltas estabelecido pelas Normas e obter uma classificação mínima de 40% na avaliação distribuída.
Fórmula de cálculo da classificação final
• AvD e AvEx são especificadas numa escala de 0 a 20 valores.
• Peso dos projectos em AvD:
o Projecto 1 - 20%
o Projecto 2 - 30%
o Projecto 3 - 50%
• Classificação = AvD * 0.5 + AvEx * 0.5
• Sempre que a equipa docente achar necessário, o aluno poderá ser submetido a uma prova oral.
• Classificação Final - se não houver prova oral
o Classificação
• Classificação Final - se houver prova oral
o Média aritmética da Classificação e da Classificação da Prova oral
Observações:
1- É condição de aprovação a obtenção de uma classificação mínima de 40% na componente AvEx.
2- Se, por decisão do docente, não ocorrer algum dos projectos, a cotação correspondente será redistribuída pelos restantes projectos, tendo em conta os pesos respectivos.
Provas e trabalhos especiais
Ver AvD, em Obtenção de Frequência.
Avaliação especial (TE, DA, ...)
O mesmo que o indicado para os alunos em regime normal, com algumas adaptações. Os alunos abrangidos pelos casos especiais só farão o último projecto da série e o exame final, conjuntamente com os alunos em regime normal, sendo exigida uma classificação mínima de 40% em cada uma das duas componentes de avaliação.
Melhoria de classificação
Apenas AvEx, numa escala de 0 a 20 valores.
Observações
Recomenda-se a frequência com aproveitamento em Fundamentos de Programação ou equivalente.