- Docente: Roberto Amadini
- Credits: 9
- SSD: INF/01
- Language: Italian
- Moduli: Roberto Amadini (Modulo 1) Angelo Di Iorio (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Bologna
- Corso: First cycle degree programme (L) in Information Science for Management (cod. 6641)
-
from Sep 15, 2025 to Dec 11, 2025
Learning outcomes
At the end of the course, the student will know the basic principles and techniques of programming, and will be able to create programs in a specific programming language.
Course contents
The course mainly covers the imperative programming paradigm using the Java language. The topics covered are as follows:
- Introduction to programming and the Java language
- Variables, types, operators, expressions
- Selection constructs
- Iteration constructs
- Arrays and matrices
- Procedural programming
- Recursion
- File input and output
Readings/Bibliography
The main textbook used in the development of this course is:
W. Savitch, Programming: Fundamentals and Advanced Techniques with Java, Pearson Italia S.p.A., 2024.
Purchasing the book is not required in order to attend the course or take the exam.
Teaching methods
Teaching materials are presented through slides and code examples.
The course also includes in-class exercises on the topics covered during the lectures, conducted by both the instructors and the course tutor. If possible, optional tutoring sessions will also be offered outside of regular class hours.
All teaching materials will be made available on the course's Virtuale platform.
Assessment methods
The exam covers all topics addressed during the course and consists of designing and writing Java code.
It takes place in a lab setting, without the aid of manuals, personal notes, or any kind of electronic devices.
The duration of the exam depends on the number of exercises assigned, with a minimum of 30 minutes per exercise and a maximum total of three hours.
The lab exam is evaluated based on the following criteria:
-
Syntactic correctness: the code must compile; exercises that do not compile will not be considered.
-
Semantic correctness: the code must correctly perform the tasks required by the assignment.
-
Pragmatics: the code must be clean, readable, non-redundant, and as efficient as possible.
Students who achieve a grade of 27 or higher on the lab exam must take an additional oral exam, aimed at confirming, modifying, or increasing the score obtained.
The oral exam will consist of completing (even partially) exercises, discussing proposed solutions, and exploring related topics in more depth.
To prevent cases of plagiarism, instructors reserve the right to request an oral verification even for students with a score below 27, or to administer the exam in written form on paper instead of in the lab.
Six exam sessions per year are guaranteed, with specific accommodations provided for students with learning disabilities (DSA).
Teaching tools
GNU/Linux Ercolani Lab:
52 fixed PCs for students with Internet access
45 workstations for student laptops.
Address: Scuole Ercolani, Mura Anteo Zamboni 2/B - Bologna.
In all the workstations the operating system Debian is installed.
The machines are equipped with Intel Core I5-4590 processors at 3.30 GHz and 8 GB of RAM.
The PCs can be used remotely 24 hours a day, 7 days a week.
This lab is subject to access control, so access is allowed only through the use of the student badge, issued by the Student Secretariat of the School of Science (via Zamboni 33). From the moment of issue, it may take a few days to obtain the access authorization.
Office hours
See the website of Roberto Amadini
See the website of Angelo Di Iorio