Go to:
Logótipo
You are here: Start > MM0061

Introduction to Programming

Code: MM0061     Acronym: IPROG

Keywords
Classification Keyword
OFICIAL Communication Technology

Instance: 2018/2019 - 1S Ícone do Moodle

Active? Yes
Responsible unit: Department of Informatics Engineering
Course/CS Responsible: Master in Multimedia

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
MM 20 Syllabus 1 - 6 45 162
2
Mais informaçõesLast updated on 2018-09-06.

Fields changed: Components of Evaluation and Contact Hours, Software de apoio à Unidade Curricular, Programa, Obtenção de frequência, Avaliação especial, Bibliografia Complementar, Fórmula de cálculo da classificação final, Métodos de ensino e atividades de aprendizagem, Resultados de aprendizagem e competências, Objetivos, Provas e trabalhos especiais, Bibliografia Complementar, Componentes de Avaliação e Ocupação, Software de apoio à Unidade Curricular, Programa, Obtenção de frequência, Avaliação especial, Provas e trabalhos especiais, Fórmula de cálculo da classificação final, Métodos de ensino e atividades de aprendizagem, Objetivos, Resultados de aprendizagem e competências

Teaching language

Suitable for English-speaking students

Objectives

In general terms, it is intended that the student acquire the competences encompassed in computational thinking, plus the effective ability to develop low / medium complexity programs using a programming language. 

Learning outcomes and competences

At the end of this course the student should acquire the following competences:

Knowledge:

  • Algorithm design;
  • Creation of programs with a programming language;
  • Development of interactive applications;
  • Fundamentals of digital game design. 


Attitudes and behaviors:

  • Structuring of computer problems according to the pillars of computational thinking;
  • Use of multimedia frameworks in the development of interactive applications.


Skills and abilities:

  • Effective use of IDE (Integrated Development Environments).

Working method

Presencial

Pre-requirements (prior knowledge) and co-requirements (common knowledge)

There are no prerequisites.

Program

1. Programming Fundamentals
Vocabulary and syntax of a programming language; variables and primitive data types; expressions; input / output; conditional control structures; functions and parameters; recursion and iteration: conditional and the for loop; testing and debugging of programs.

2. Data Structures
Vectors; strings; stacks, lists and tables; abstractions.

3. Software Project
Structured programming; object-oriented programming; libraries and frameworks.

4. Introduction to multimedia programming
- Graphics and Visualization
- Concept and Design of Digital Games
- Digital Games Programming

Mandatory literature

How to Think Like a Computer Scientist: Learning with Python 3ed; Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers, 2012 (available online at: http://www.openbookproject.net/thinkcs/python/english3e/)

Complementary Bibliography

Brad Miller and David Ranum; Learning with Python: Interactive Edition. Based on material by Jeffrey Elkner, Allen B. Downey, and Chris Meyers, 2013 (http://interactivepython.org/runestone/static/CS152f17/index.html#)
Costa Ernesto; Programação em Python. ISBN: 978-972-722-816-4
Lubanovic Bill; Introducing Python. ISBN: 978-1-449-35936-2
Sweigart Albert; Making games with python & pygame. ISBN: 978-1469901732 (Available online at: http://inventwithpython.com/pygame/)
Al Sweigart; Invent Your Own Computer Games with Python, 4th edition, No Starch Press, 2016. ISBN: 978-1593277956 (Available online at: https://inventwithpython.com/invent4thed/)

Teaching methods and learning activities

The teaching methodology is based on a constructionist pedagogical model, which combines a focus on the development of computational thinking, through a set of active pedagogical dynamics, developing the basic skills for the development of low / medium complexity software through problems that appeal to creativity (digital games). The course is designed in a gamification perspective, creating short iterative cycles that promote regular learning activity, combining activities supervised by the teacher and other activities developed autonomously by the student.

Software

Python

keywords

Physical sciences > Computer science > Programming

Evaluation Type

Distributed evaluation with final exam

Assessment Components

Designation Weight (%)
Exame 30,00
Trabalho prático ou de projeto 70,00
Total: 100,00

Amount of time allocated to each course unit

Designation Time (hours)
Estudo autónomo 80,00
Frequência das aulas 42,00
Trabalho escrito 40,00
Total: 162,00

Eligibility for exams

The students should not exceed the limit of allowed classes' absences (25% of the expected classes).

Student workers and equivalents exempted from classes must, on a regular basis, combine their work with the teachers, present the progress of their work, as well as present them simultaneously with ordinary students, and carry out the practical tests of individual assessment provided.

Calculation formula of final grade

The distributed component has a weight of 70% and the final exam 30%.

The distributed evaluation consists of two components:

  • Practical exams (duration of 60 to 90 min);

4 practical exams are preformed using a computer that assess the ability of the student to develop algorithms to solve certain low / medium complexity problems. The assessment is automatic and performed by computer.

  • Continuous assessment

The points obtained by the student in the gamified activities are converted into the continuous assessment. In this particular case, a maximum of 1000 points corresponds to 100% in the continuous assessment.

The formula for the distributed evaluation is:

PE * 70% + CA * 30%

PE = average of the practical exams

CA = continuous assessment

Examinations or Special Assignments

Students who reach the maximum level of continuous assessment may substitute one of the practical tests for a project.

Special assessment (TE, DA, ...)

Students with a special status are assesses as regular students. They have to perform the same assessments within the same deadline as regular students.

Classification improvement

The grade of the exam may be improved at a second exam ("recurso"). Students may improve the grade of the continuous assessment component on the subsequent academic year.

Recommend this page Top
Copyright 1996-2025 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2025-06-23 at 22:17:18 | Acceptable Use Policy | Data Protection Policy | Complaint Portal