- International Degree Programs
- Master's Degree in DIGITAL HERITAGE
- COMPUTER SCIENCE FOR CULTURAL HERITAGE
COMPUTER SCIENCE FOR CULTURAL HERITAGE
- Teaching in italian
- COMPUTER SCIENCE FOR CULTURAL HERITAGE
- Teaching
- COMPUTER SCIENCE FOR CULTURAL HERITAGE
- Subject area
- ING-INF/05
- Reference degree course
- DIGITAL HERITAGE
- Course type
- Master's Degree
- Credits
- 6.0
- Teaching hours
- Frontal Hours: 30.0
- Academic year
- 2025/2026
- Year taught
- 2025/2026
- Course year
- 1
- Language
- ENGLISH
- Curriculum
- PERCORSO COMUNE
- Reference professor for teaching
- DI BICCARI CARLA
Teaching description
None
Theoretical part_
1. Definition of Model. Data-Information-Knowledge.Definition of informatics, algorithms, computers. Definition of computer program. The Von Neumann machine architecture: main characteristics, CPU, registers, ALU, buses, Main Memory, peripherals. Fetch-Decode-Execute cycle. The Von Neumann bottleneck.
2.Positional representation/base representation of numbers. Numbers in base 2/ binary representation of integers (positive and negative), overflow. Bit, bytes. Definition of programming language. Machine language,-low level language, high level languages. Compiled vs interpreted languages.
3.Performance measures. Computer performance as a function of the execution time. System CPU time vs User CPU time. Clock and clock cycles.
4.CPU and Cache memory. Memory hierarchy. Cache hit and miss. Single core vs multiple core architectures. CPU vs GPU. Volatile memories. RAM: SRAM, DRAM and their fundamental hardware components. Basic structure of a MOSFET.
5.Non-volatile memories. ROM, PROM, EPROM EEPROM, Flash. Floating Gate –MOSFET.
6.Solid States Drive, HDD. The OS: Basic components. Program vs process.
7.API, Virtualization concept, Virtual Machines and associated Use cases.
8.The Process Manager/Scheduler component in the OS, idle time, process context, multiprogramming, process states.
9.The os: the memory management component. Issues with continuos memory management.
Python.
1.Introduction to python. Python virtual machine.Installing python. Executing python code from cmd/shell.
Check installed version. Run .py from cmd/shell.
Variables: declaration and assignement syntax.
Variables: forbidden naming, naming best practices.
2. Fundamental data types: int, string, float, bool. Oprations with integers, operations with floats. Operations with strings.
print()
type()
3. Comparison operators, if conditionals. Lists and tuples.
4. For cycle, while cycle, range() method, introduction to functions, parameters and arguments.
Functions vs methods.
5. Introduction to sorting algorithms.Bubble sort.
6. Introduction to object oriented programming: Classes and Objects in python
Getting starrted with VS Code
7. Defining classes and objects in python. The constructor method.
8. Inheritance in object-oriented programming. Built-in libraries.
10. Project: first GUI with Tkinter, installing additional libraries with pip, using “requests” to call a simple open web service.
9. Project: installing a JobScraper application from git-hub. Creating a dataset of scraped social media posts. Pandas and dataframes, matplotlib for a simple plot.
The course aims at teaching the foundamentals of computer science the students need to get through the other courses in the Digital Heritage Master degreee.
The first half of each lesson is dedicated to the explanation of theoretical concepts. The second half to the introduction to Python. All lessons can be attended in person or online (real-time streaming)
Oral exam
Teaching materials provided on the official teams channel of the course.
Semester
First Semester (dal 22/09/2025 al 16/01/2026)
Exam type
Compulsory
Type of assessment
Oral - Final grade
Course timetable
https://easyroom.unisalento.it/Orario