Programming and Databases

« Return

Objectives

1. To review, deepen knowledge and learn programming methodologies and techniques using multiple programming paradigms.

2. To prepare, supervise and evaluate small and medium-scale programming challenges and projects aimed at computer education in the various scholar degrees.

Program

1. Imperative programming

2. Types and Data Structures

3. Functional programming

4. Recursion and iteration

5. Programming with objects

6. Problem solving using multiple paradigms

7. Development of programming projects

Teaching Methodologies

The theoretical classes are expository in which concepts are presented and examples and demonstrations of the execution of programs with a pedagogical purpose are discussed.

The practical laboratory classes, which work in conjunction with the theoretical classes, are designed to carry out workshops and laboratory projects, in groups of students, in applications in various fields.

Tutorial guidance classes are dedicated to monitoring and controlling the development of projects in groups of students.

The evaluation focuses on the development and presentation of a multi-paradigm programming project, supported by a written report, that addresses a problem whose solution is transversal to the topics of the syllabus.

The Moodle e-Learning platform (at http://moodle.uac.pt) is used as a repository of pedagogical and didactic material to support learning, as well as a platform for scheduling, disseminating and promoting complementary activities and management of the assessment elements.

Bibliography

Conery, J. S. (2015). Explorations in Computing: An introduction to Computer Science and Python programming: CRC Press.

Copec, D. (2019). Classic Computer Science Problems in Python: Easy to Advanced Programming Challenges to Sharpen Your Coding Skills and Improve Your Algorithmic Thinking: Manning Publications.

Costa, E. (2015). Programação em Python: Fundamentos e resolução de problemas: FCA.

Guttag, J. V. (2021). Introduction to Computation and Programming Using Python: With application to computational modeling and understanding data (Third edition): MIT Press.

Martins, J. P. (2020). Programação em Python: Introdução à programação utilizando múltiplos paradigmas (4.ª Edição): IST Press.

Thomas, D. & Hunt, A. (2020). The Pragmatic Programmer: Your journey to mastery (20th Anniversary Edition): Addison-Wesley.

Code

02015976

ECTS Credits

6

Classes

  • Orientação Tutorial - 6 hours
  • Práticas e Laboratórios - 30 hours
  • Teóricas - 30 hours

Evaluation Methodology

  • According to Teaching Methods: 100%