Vinaora Nivo Slider 3.x

Programmazione

CFU: 9

Prerequisites

None except the knowledge and skills acquired in the “Fondamenti di Informatica” course.

Preliminary Courses

Fondamenti di Informatica. 

Learning Goals 

The objective of the course is to provide students with the methodological, theoretical and practical skills of procedural and object-oriented programming necessary for the correct development of small and medium-sized software projects.

Expected Learning Outcomes 

Knowledge and understanding

The student must demonstrate to have acquired the understanding needed to elaborate the concepts underlying modular programming and object-oriented programming. The course aims to provide the knowledge and tools that will allow students to develop autonomous skills of design and development of simple software applications, according to both procedural and object-oriented paradigm.

Applying knowledge and understanding

The student must demonstrate the ability to apply the acquired skills by designing and implementing simple software applications, using the reference programming language (C++) and the UML language. In particular, he/she must be able to recognize and realize the relationships between classes and objects in the proposed domain and context, and know how to implement the basic data structures (list, stack, queue).

Course Content - Syllabus

  • Advanced aspects of procedural programming: Recursion; Dynamic memory allocation; Exception handling; Feature overload; Inline functions;
  • Modular programming: data and control abstraction, module concept, module relationships, coupling, information hiding, modularization techniques and tools, separate compilation, the make utility;
  • Data Structures, Abstract Data Types: ADT: Abstract Data Types. Lists, Stacks, Queues, Search and Sort Algorithms;
  • Object-oriented programming: The OO paradigm; Classes and Objects; Inheritance; Polymorphism.
  • Object-oriented programming and generic programming in C++: Classes, objects, constructor and destructor; Overloading; Type conversions; Inheritance and multiple inheritance; The hierarchy for 'I/O operations and use of standard libraries; Abstract classes; other encapsulation mechanisms (namespace).
  • Generic programming: Template, functions and model classes, presentation of the Standard Template Library
  • Design and UML: Software Design (hints); Phases of Object Oriented Design; The UML language in O.O.; from UML to C++.

Readings/Bibliography

 

Textbook, tutorial and exercises, presentations.

FURTHER INFORMATION: PLEASE VISIT THE PROFESSOR’S WEBSITE AT WEB DOCENTI (www.docenti.unina.it)

Teaching Methods

Lectures (50%), exercises (25%) and laboratory activities (25).

Examination/Evaluation criteria

Exam type

Written and oral. Questions of the written exam refer to programming exercises.

 

Evaluation pattern

The written exam performance is binding to have access to the oral exam. The total grade is the average between the grade of the oral test and the grade of the written test.

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.