Unidade Curricular / Curricular Unit
Fundamentos de Programação
Ciclo de Estudos / Study Cycle
Licenciatura em Informática de Gestão
Nome do Docente Responsável
Pedro Hugo Queirós Alves
Nome do Docente Adicional
Fernando Teodósio, Pedro Freire
Objectivos de aprendizagem (conhecimentos, aptidões e competências a desenvolver pelos estudantes)
O objectivo desta unidade curricular é fornecer aos futuros profissionais na área da informática as bases para que possam iniciar (de um modo disciplinado) a actividade de programação.
O aluno deverá ser capaz de conhecer as primitivas das linguagens do tipo imperativa.
Concretamente, o aluno deverá conhecer a sintaxe básica de JAVA que lhe permita escrever programas simples.
Learning outcomes of the curricular unit
This curricular unit aims to provide the basic programming concepts to future software engineers, allowing them to start (in a disciplined form) the programming activity.
The student should be able to understand the primitives of imperative programming languages.
In practice, the student should know the basic syntax of the Java language and develop simple Java applications.
Conteúdos programáticos
•introdução à programação
• introdução aos algoritmos e aos programas
• tipos de dados nativos
• operações sobre tipos de dados nativos
• tipos de dados compostos
• entradas e saídas
• selecção
• repetição
• subprogramas
• introdução à recursividade e programação lambda
Syllabus
•Introduction to programming
• Introduction to algorithms
• Native data types
• Operations with native data types
• Composed data types
• Input/Output
• Selection
• Repetition
• Modules
• Introduction to recursion and lambda programming
Demonstração da coerência dos conteúdos programáticos com os objectivos da unidade curricular
Conhecimento e compreensão: a problemática da programação no contexto do desenvolvimento de curta duração deve ser identificada pelo aluno.
Análise em Engenharia: é expectável que o aluno seja capaz de conceber soluções tecnológicas, que essas soluções considerem a optimização básica para os problemas colocados e que sejam capazes de as testar.
Contexto envolvente: O projeto em grupo fomenta o desenvolvimento dos skills de comunicação interpessoal e de gestão de requisitos e de tempo disponível para o seu desenvolvimento.
Demonstration of the syllabus coherence with the Curricular Unit’s objectives
Knowledge and understanding: the student should be able to identify the programming problems associated with the short-tem software development.
Analysis in Engineering: it is expectable that the student is able to design technological solutions, that those solutions are properly optimized and tested for the specific problem they aim to solve.
Surrounding context: The project is developed in group, improving communication skills as well as time and requirements management.
Metodologias de ensino (avaliação incluída)
A disciplina é teórico-prática, havendo uma alternância entre métodos:
Met. 1 – expositivos,
Met. 2 – demonstrativos
Met. 3 – participativos.
Avaliação Continua:
• 50% – Testes
• 50% – Projecto
Avaliação da Época de Recurso:
• 50% – Exame
• 50% – Projecto
Planned learning outcomes, teaching methods and assessment methods and criteria
The curricular unit is both theoretical and practical, switching between:
Met. 1 – exposition,
Met. 2 – demonstration
Met. 3 – participation.
Continuous evaluation:
• 50% – Tests
• 50% – Project
Appeal evaluation:
• 50% – Exam
• 50% – Project
Demonstração da coerência das metodologias de ensino com os objectivos de aprendizagem da unidade curricular
Projecto em Engenharia: começa-se nesta cadeira a fomentar as necessidades de alinhar os requisitos dos clientes e utilizadores finais com as soluções tecnológicas conhecidas.
Investigação: Motiva-se nesta cadeira a capacidade de discutir soluções distintas para o mesmo problema e pesquisar soluções já existentes para os problemas colocados.
Prática em Engenharia: usa o contexto laboratorial para introdução a ferramentas (IDEs, etc.) que permitam apoiar o processo de desenvolvimento, optimizando o ciclo de desenvolvimento de software.
Demonstration of the teaching methodologies coherence with the curricular unit’s objectives
Engineering project: in this curricular unit, students are motivated to align requirements (from clients and final users) with technological solutions.
Research: Students are motivated to discuss several distinct solutions to the same problem and research existing solutions to the proposed problems.
Practice in Engineering: uses the laboratorial context to introduce students to tools (IDEs, etc.) that improve and support the development process.
Bibliografia Principal / Main Bibliography
– Fundamentos de Programação, utilização das linguagens de programação imperativa: C e JAVA, Sérgio Luís Guerreiro, Sebenta ULHT, Lisboa, Portugal, 2008
– Introdução à Programação em Java, António Adrego da Rocha / Osvaldo Manuel da Rocha Pacheco, FCA, Lisboa, Portugal, 2009
– Programação em scheme introdução à programação utilizando múltiplos paradigmas, João Pavão Martins, Maria dos Remédios Cravo, IST Press, 2007
Departamento de Engenharia Informática e Sistemas de Informação
Edifício F, sala F.1.3
Direção — 217 515 500 (ext: 683)
Serviço de Apoio Tecnico-Admistrativo (SATA) — 17 515 500 (ext: 764)
Gestão de conteúdos por Lucio Studer Ferreira © 2022 COFAC.