Learning Contents
What do I need to learn?
To develop the sub-competencies, reach the required levels of mastery, and address the problem-based scenarios presented in this course, it is necessary to learn various concepts, theories, procedures, techniques, attitudes, and values, among other content.
Conceptual Content
- Functional Programming
- Concurrent and Parallel Programming
- Introduction to Theory of Computation
- Regular Languages
- Context-Free Languages
- Turing Machines
Procedural Content
- Use of parallel programming tools to solve concurrency problems.
- Design of formal programming languages, including lexical and syntactic analysis.
- Design og programs across different paradigms.
- Design and implementation of interoperable computational models to generate optimal solutions for established problems.
Attitudinal Content
- Recognizing and making conscious, efficient use of the syntactic and semantic elements of high-level programming languages.
- Recognizing the importance of the proper use of programming language elements and computer resources, while maintaining an openness to new programming paradigms.
- Valuing the importance of mathematical modeling in generating new knowledge within the field of Computer Science.
- Valuing the importance of mathematical modeling for the automation of technologies within the field of Computer Science.