Code |
16664
|
Year |
1
|
Semester |
S1
|
ECTS Credits |
6
|
Workload |
PL(30H)/T(30H)
|
Scientific area |
Informatics
|
Entry requirements |
NA
|
Learning outcomes |
This course aims to introduce students to programming languages (PL). At the end of the course, the student should know how to structure and write programs using high-level programming languages (e.g., Python). In particular, the student should (1) know how to structure problems using algorithms; (2) know how to install the main development tools; (3) be aware of the characteristics of the Python programming language; (4) know its main commands; (5) be aware of the main Python packages; (6) know how to automate routines using control and iteration structures; know how to write and structure programs using (7) arrays; (8) advanced data structures; (9) list comprehension; (10) be able to handle files; (11) know how to decompose problems through functions; (12) know how to create software packages; (13) be able to run scripts from the command line; (14) know how to test and correct errors and exceptions; (15) know how to create logs; (16) know how to create classes
|
Syllabus |
1. Introduction to Computational Thinking 2. Python Programming Toolkit 3. Introduction to Programming Languages 4. Introduction to Python 5. Importing and using Python Libraries 6. Control Structures and Iteration 7. Data Structures 8. Advanced Data Structures 9. List Comprehensions and LINQ 10. Reading and Writing Files 11. Functions 12. Creating and Sharing Python Packages 13. Command Line Interface (CLI) 14. Tests and Exceptions 15. Logs 16. Classes in Python
|
Main Bibliography |
- Sobral, S. (2023). Introdução à Programação usando Python. Silabo. - Carvalho, A. (2021). Práticas de Python - Algoritmia e Programação. FCA. - Downey, A. (2015). Think Python - How to Think Like a Computer Scientist. O'Reiley. Green Tea Press - Severance, C. (2013). Python for Everybody - Exploring Data Using Python - Miller, B., and Ranum, D. (2011). Problem Solving with Algorithms and Data Structures using Python: Interactive Edition
|
Teaching Methodologies and Assessment Criteria |
Teaching/Learning Assessment - Test: 50% (computer-based test with partial access to the contents) - Practical Laboratory Exercises (individual): 25% - Practical Project (groups of 2 elements): 25%
Evaluation by Exam - Exam: 100% (computer-based test without access to the contents)
|
Language |
Portuguese. Tutorial support is available in English.
|