Introduction to Programming

« Return

Objectives

The main objective of the curricular unit is learning the basic concepts of program design and programming in the imperative paradigm, using Java as a language support.

At the end of the curricular unit the students should be able to:

- Analyze and solve problems;

- Know the elements of algorithmic language in order to develop algorithms to solve real problems;

- Know and apply the syntax and semantics of the Java language.

- Develop different forms of data processing.

- Understand the basic concepts of object programming.

- Design and implement projects of an interdisciplinary nature.

- Work as a team.

- To develop small scale applications using the Java language.

Program

  • Computers, computing and programming
  • Elementary data types and expressions
  • Execution control instructions
  • Strings (strings) and files
  • Lists and dictionaries
  • Functions
  • Classes, objects and modules
  • Graphical User Interfaces (GUI)

Teaching Methodologies

Theoretical classes are expository in which elementary programming concepts are presented using examples and demonstrations, using the Python language.

The laboratory practical classes work in conjunction with the theoretical classes and the aim is to consolidate the contents of the theoretical classes by solving small and medium-scale exercises and problems, with algorithmic solutions, using the Python language.

UAc's e-Learning Moodle platform (at http://moodle.uac.pt) is used as a repository of teaching material to support learning, as well as a platform for the dissemination and promotion of complementary activities and the management of elements and of the evaluation calendar.

The Moodle learning management system is used to provide various resources and activities as a complement to classroom classes.

Bibliography

Essential

  • Gaddis, T. (2018). Starting Out with Programming Logic and Design (5th Edition): Pearson
  • Martins, J. P. (2020). Programação em Python: Introdução à programação utilizando múltiplos paradigmas (4.º Edição): IST Press
  • Wentworth, P., Elkner, J., Downey, A. B., Meyers, C. (2020). How to Think Like a Computer Scientist: Learning with Python 3 Documentation (versão interativa)

Complementary

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

Code

0105874

ECTS Credits

6

Classes

  • Práticas e Laboratórios - 30 hours
  • Teóricas - 30 hours