PROGRAMMING LANGUAGES
Course objectives
* General objectives Acquire object--oriented programming paradigm. Use of object-oriented logic in the design of medium-size software applications. Comparison among different programming languages paradigm (imperative, functional, and object--oriented) to speed-up learning of new programming languages. * Specific objectives: a) Knowledge and understanding: Basic and advanced aspects of C++ language. Basic knowledge of Haskell. General principles of object--oriented and functional programming. b) Apply knowledge and understanding: Apply object--oriented methodology to the design of medium-size software application. Apply functional principles to problem-solving, even when programming with an imperative language such as C. c) Critical Judgemental skills The comparative study of several programming languages paradigm allow student to evaluate, for example, which is the most suitable language to use to develop a given software application. d) Communication skills Students are stimulated, both during lectures and in the oral examination, to expose functional requirements as well as design structure of a medium-size software application. e) Learning ability The comparative study of several programming languages paradigm gives to students the ability to focus on fondamental aspects of programming languages (parameter passing rules, type systems, language semantics) and this greatly improve their ability to learn new programming languages. Also the ability to learn technical aspects (such as libraries, use of developer tools) will benefit from this studies.
Program - Frequency - Exams
Course program
Prerequisites
Books
Teaching mode
Frequency
Exam mode
Lesson mode
- Lesson codeAAF1267
- Academic year2025/2026
- CourseMathematics
- CurriculumStoria, didattica e fondamenti
- Year2nd year
- Semester1st semester
- CFU3