- Docente: Andrea Roli
- Credits: 9
- SSD: ING-INF/05
- Language: Italian
- Moduli: Andrea Roli (Modulo 1) Stefano Benedettini (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Cesena
- Corso: First cycle degree programme (L) in Computer Engineering (cod. 0948)
Learning outcomes
The course will provide students with knowledge in Object Oriented
Programming and skills in designing small/medium size software
applications and implementing them in Java and C++.
Course contents
- Functions and procedures:
- binding, scope rules and environments
- parameter passing
- function call and run-time model
- Algorithms and data structures (basics)
- static and dynamic allocation
- computational complexity
- Elements of Object-Oriented Design and Programming
- from algoriths to systems
- basic concepts of OOP: objects, classes, interfaces
- reuse, extenstion and composition
- dynamics and exceptions
- event-based architectures
- GUI programming
- Libraries for I/O and File System access and management
Readings/Bibliography
The course notes are the basic reference for the course. Among
the
various textbooks which can be useful for deeping the course
topics:
- Thinking in C++ e Thinking in Java, Eckel - Prentice Hall. (available at: http://www.bruceeckel.com)
Teaching methods
The course is organized in a set of lessons, balancing both theory
and practice with the assistence of teacher and tutor.
Assessment methods
- Written examination (programming exercises and questions)
- Oral examination (presentation of student projects and
questions)
Teaching tools
The course notes - presented during the lessons - are available
for
downloading at the official web site of the course. Part of the
lessons
takes place in a laboratory where students develop exercises
and
projects (applications).
Links to further information
http://apice.unibo.it/xwiki/bin/view/AndreaRoli/Courses
Office hours
See the website of Andrea Roli
See the website of Stefano Benedettini