Contacto WhatsApp 961135355

Universidade Lusófona do Porto

Fundamentals of Programming


The course focuses on teaching not only the programming language, but also its importance in the implementation of algorithms and their translation into programs that can be executed on a computer. It will act not only in the area of language learning itself, but also in the benefits of using development environments (IDE) to facilitate the development of programs.


Videogames and Multimedia Design

Level of Qualification|Semesters|ECTS

| Semestral | 6

Year | Type of course unit | Language

1 |Mandatory |Português



Recommended complementary curricular units


Professional Internship



Introductory Concepts

  • The workings of a computer
  • The programming language as an abstraction
  • The relationship between language and program
  • Structure of a program
  • Syntax and semantic notions

Programming Basics

  • Data types (integers, decimals, strings, collections and compounds)
  • Operations
    • Type of nuclear operations
    • Operator evaluation order
    • Unitary operators
  • Conversion between data types
  • Control structures (conditions, cycles and selection)
  • Functions / methods
  • Syntax in the form of symbols, reserved words and strict phrasing

C # Programming

  • Introduction to the syntax
  • Data structures and objects
  • Manipulation of collections and nuclear variables
  • Decomposition of a program in functions / methods
  • Parameter passing by value and reference
  • Basic user communication (loop program introduction)

Preparing the future

  • Compilers and interpreters
  • Formal programming paradigms: imperative, functional, logical and object oriented


The purpose of the curricular unit is to provide the student with the ability to develop, in a structured manner, a program based on the C# programming language. This discipline is closely linked to Algorithms, as it is the transition to machine operation.

Teaching methodologies and assessment

The lectures are expository integrating, whenever relevant, solving exercises in order to facilitate the understanding of the topics taught. The laboratory practice classes allow the student to exercise the subjects taught in new situations.

Continuous evaluation

  • 50% for 1 written test (minimum grade 35%, or 7 out of 20)
  • 40% for a individual mini-project (minimum 35%, or 7 out of 20)
  • 10% for class participation and weekly assignments

Final assessment 

For students with a less than 10 points grade or for improving a grade

  • 100%: written exam


  • Doyle, B. - C# Programming: From Problem Analysis to Program Design (4th Edition) CEngage Learning. 2013, 978-1285096261


Office Hours

Nome do docente  

Horário de atendimento