Ficha Unidade Curricular (FUC)
Informação Geral / General Information
Carga Horária / Course Load
Área científica / Scientific area
Ciências e Tecnologias da Programação
Departamento / Department
Departamento de Ciências e Tecnologias da Informação
Ano letivo / Execution Year
2024/2025
Pré-requisitos / Pre-Requisites
Conhecimentos elementares de Matemática (ensino secundário).
Objetivos Gerais / Objectives
Dotar os alunos de noções fundamentais de programação, e experiência prática utilizando a linguagem Java. No final da disciplina, os alunos terão tomado contacto com primitivas de programação imperativa existentes em várias linguagens, bem como com conceitos básicos de programação orientada para objetos.
Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes
Após a conclusão desta unidade curricular o aluno deverá ficar apto a: OA1. Desenvolver funções/procedimentos que implementem algoritmos simples. OA2. Desenvolver código para manipular estruturas vetoriais e matriciais. OA3. Desenvolver classes de objetos simples. OA4. Escrever e compreender código Java.
Conteúdos Programáticos / Syllabus
CP1. Funções independentes CP2. Variáveis e estruturas de controlo CP3. Funções dependentes CP4. Vetores CP5. Valores compostos CP6. Procedimentos e referências CP7. Classes de objetos CP8. Matrizes CP9. Ficheiros e I/O CP10. Recursão
Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular units content dovetails with the specified learning outcomes
A interligação entre os conteúdos programáticos e os objetivos de aprendizagem (OA) é a seguinte: O objetivo de aprendizagem OA1 está relacionado com os conteúdos programáticos CP1-7 e CP9, dado que os conceitos são aplicados essencialmente por meio do desenvolvimentos de funções e procedimentos. O objetivo de aprendizagem OA2 é abordado nos conteúdos programáticos CP4-7, cujos exercícios associados envolvem a manipulação de estruturas vetoriais e objetos. O objetivo de aprendizagem OA3 concretiza-se no conteúdo programático CP8, o qual consiste numa iniciação à programação orientada para objetos. O objetivo de aprendizagem OA4 é transversal à totalidade dos conteúdos programáticos (CP1-9), dado que apenas consegue ser atingido através da prática da programação em Java tendo em conta as diferentes primitivas disponíveis na linguagem.
Avaliação / Assessment
A avaliação da UC é realizada ao longo do semestre. As componentes de avaliação e respectivos pesos na nota final são os seguintes: a) Submissão de exercícios semanalmente (10%); nota mínima: 60%. b) Teste Intercalar a realizar a meio do semestre (25%); sem nota mínima. c) Projeto Individual (25%); nota mínima: 20%. d) Teste Final a realizar na época de exames (40%); nota mínima: 40%. Notas: 1. A avaliação dos exercícios semanais é baseada apenas na contabilização das submissões devidamente realizadas (e não na avaliação dos exercícios em si). 2. Existirão duas possibilidades de realização do Teste Final, na primeira e segunda época de exames. 3. Não existe a possibilidade de aprovação à UC apenas por exame para 100% da nota. 4. A realização de exame de época especial implica a entrega e discussão de Projeto Individual (25%) e realização de Exame escrito (75%). 5. Não é possível utilizar notas de componentes de avaliação obtidas em edições anteriores da UC.
Metodologias de Ensino / Teaching methodologies
Esta unidade curricular está estruturada numa combinação de aulas teóricas e aulas práticas. As aulas teóricas têm um cariz demonstrativo, no sentido em que em todas as aulas, uma parte significativa das mesmas é dedicada a resolver exercícios passo-a-passo, demonstrando a aplicação de conceitos. As aulas práticas destinam-se à realização de exercícios ao longo do semestre, os quais acompanham os conceitos abordados nas aulas teóricas.
Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes
A metodologia de ensino pretende atingir os objectivos de aprendizagem através da combinação de aulas teóricas e aulas práticas. Nas aulas teóricas são introduzidos os conceitos de programação, os quais estão relacionados com os objetivos de aprendizagem OA1-3, utilizando a linguagem Java (OA4). Nas aulas práticas são exercitados os conceitos expostos nas aulas teóricas, de modo a que os alunos atinjam o objetivo de saber escrever a compreender código Java (OA4).
Observações / Observations
Em caso de reprovação na 1ª época, o aluno pode voltar a realizar o Teste Final na 2ª época, mantendo a nota das restantes componentes de avaliação. Poderá ser pedida uma inscrição obrigatória nas provas em que é esperado um número elevado de alunos.
Bibliografia Principal / Main Bibliography
Y. Daniel Liang, "Introduction to Java programming : comprehensive version", 10th Ed., Pearson, 2015.
Bibliografia Secundária / Secondary Bibliography
Data da última atualização / Last Update Date
2024-07-29