- Docente: Fabio Vitali
- Credits: 9
- SSD: INF/01
- Language: Italian
- Teaching Mode: Traditional lectures
- Campus: Bologna
- Corso: First cycle degree programme (L) in Computer Science (cod. 8009)
-
from Sep 22, 2025 to Dec 19, 2025
Learning outcomes
At the end of the course, the student knows the most important technologies used in the World Wide Web context. The student is able to create web documents and simple distributed web applications, determine their visual aspects, verify their correctness and universality, and design and verify their usability and user experience.
Course contents
The course covers the following topics:
- Fundamentals: Layer 7 protocols, character encodings, standardization bodies
- Core web technologies: HTTP, URI, HTML, CSS, XML
- Server-side technologies for web applications: PHP, Python, NodeJs
- Client-side technologies for web applications: JavaScript, Ajax, JSON, JavaScript frameworks
- Component-based web programming: Angular, React, Vue
- Introduction to some Semantic Web technologies: RDF, OWL, SPARQL, ontologies
- User Experience Design for websites: the Garrett model
N.B.: This course takes place in the second semester (February–May), with rooms and timetables often communicated to the instructor at the last minute and never before January of the same year.
Important: Students with specific learning disorders (SLD) or temporary/permanent disabilities are invited to promptly contact the appropriate University office (https://site.unibo.it/studenti-con-disabilita-e-dsa/en ) and agree with the teacher on the most effective strategies for attending the lectures and preparing for the exam.
Readings/Bibliography
Due to the rapid evolution of the field, there is no textbook that covers the entire subject. Students are provided with slides shown during lectures and are guided from time to time to typically free and online resources for completing the course and exploring topics in greater depth.
Teaching methods
The course includes a fundamentals section in the classroom, lab exercises, and a project carried out in groups of 2–3 people aimed at developing a web application using the latest development technologies.
Assessment methods
The exam is divided into two parts: a group project presentation and an individual written test.
The project presentation is done in groups and is intended to assess the correctness, completeness, and interoperability of the web application, as well as each member's individual contribution to the overall work.
The written test consists of exercises on the technologies covered in the course and some theoretical questions.
Teaching tools
The website virtuale.unibo.it provides access to the course site (which changes from year to year) and contains slides, exercises, exam samples, project details, and the intermediate outputs of the collaborative work by all students in the course towards the final project.
Office hours
See the website of Fabio Vitali