Web and Mobile Programming
A.Y. 2025/2026
Learning objectives
This course is aimed at introducing WWW programming concepts and techniques. In particular: the fundamentals concepts of the WWW; the fundamentals of Web Applications desing; the main technologies available for developing Web Applications; the main design patterns adopted in developing Web Applications.
Expected learning outcomes
The aim of the course is for the student to acquire a series of knowledge, skills, and competences, the main ones of which are:
Knowledge
- Understanding the principles that have driven the evolution of the Web.
- Understanding the basic principles of designing a Web application.
- Knowledge of the main technologies available for the development of Web applications.
- Knowledge of the most common design patterns adopted for solving recurring problems in Web application programming.
Skills
- Organize a web application project
- Verify the spread of technology or module
- Test the code of a Web application
- Evaluate the performance results of a Web application
- Document the main design phases of a Web application
Expertise
- Evaluate the most suitable technological standards for the realization of a project
- Evaluate the consistency of a project with its expected objectives
- Evaluate interventions for the improvement of the performances of an application
- Illustrate the design phases of a Web application
Knowledge
- Understanding the principles that have driven the evolution of the Web.
- Understanding the basic principles of designing a Web application.
- Knowledge of the main technologies available for the development of Web applications.
- Knowledge of the most common design patterns adopted for solving recurring problems in Web application programming.
Skills
- Organize a web application project
- Verify the spread of technology or module
- Test the code of a Web application
- Evaluate the performance results of a Web application
- Document the main design phases of a Web application
Expertise
- Evaluate the most suitable technological standards for the realization of a project
- Evaluate the consistency of a project with its expected objectives
- Evaluate interventions for the improvement of the performances of an application
- Illustrate the design phases of a Web application
Lesson period: Third four month period
Assessment methods: Esame
Assessment result: voto verbalizzato in trentesimi
Single course
This course can be attended as a single course.
Course syllabus and organization
Single session
Responsible
Lesson period
Third four month period
Course syllabus
The course is divided into 3 modules that will address the topics detailed below.
1. History and architecture of the WWW
- Web implementation standards
- The reasons for the scalability of the Web
- Web 2.0, Mobile Web and Cloud Architectures
- Web 3.0 introduction
2. Interface
- HTML, syntax and parsing
- XHTML and CSS
- AJAX and Javascript
- CSS3
- HTML5, new vocabulary
- HTML5, Canvas and SVG
- HTML5, Communication API
- HTML5, offline applications
3. Data
- HTML as a vocabulary for representing documents
- HTML as a vocabulary for representing interfaces
- Data management in multi-channel contexts
- REST protocols
- From databases to Cloud architectures
- JSON
- AJAX
- Client side storage
1. History and architecture of the WWW
- Web implementation standards
- The reasons for the scalability of the Web
- Web 2.0, Mobile Web and Cloud Architectures
- Web 3.0 introduction
2. Interface
- HTML, syntax and parsing
- XHTML and CSS
- AJAX and Javascript
- CSS3
- HTML5, new vocabulary
- HTML5, Canvas and SVG
- HTML5, Communication API
- HTML5, offline applications
3. Data
- HTML as a vocabulary for representing documents
- HTML as a vocabulary for representing interfaces
- Data management in multi-channel contexts
- REST protocols
- From databases to Cloud architectures
- JSON
- AJAX
- Client side storage
Prerequisites for admission
An understanding of the basic programming concepts and the ability to read a text in English is required.
Teaching methods
Course topics will be covered through distance learning lectures and self-testing exercises.
Teaching Resources
Mandatory materials
· Slides and exercises made available on the Ariel platform
Optional materials
· HTML 5 e CSS 3 - Gabriele Gigliotti, Milano: Apogeo, c2011
· Professional Node.js Building Javascript-Based Scalable Software - Pedro Teixeira: John Wiley & Sons, Inc. 2013
· HTML5, A vocabulary and associated APIs for HTML and XHTML: http://www.w3.org/TR/html5/
· Beginning JavaScript with DOM scripting and Ajax /- Russ Ferguson, Christian Heilmann. 2013
· Slides and exercises made available on the Ariel platform
Optional materials
· HTML 5 e CSS 3 - Gabriele Gigliotti, Milano: Apogeo, c2011
· Professional Node.js Building Javascript-Based Scalable Software - Pedro Teixeira: John Wiley & Sons, Inc. 2013
· HTML5, A vocabulary and associated APIs for HTML and XHTML: http://www.w3.org/TR/html5/
· Beginning JavaScript with DOM scripting and Ajax /- Russ Ferguson, Christian Heilmann. 2013
Assessment methods and Criteria
The exam methods for the course are as follows:
- two tests, one written and one project-based
- the written test will consist of 2 sub-parts, one with multiple choice answers and one with open answers;
- in general, the written test does not last more than an hour and a half.
- The project-based test requires the creation of a web application and the activity must be carried out individually
- The descriptive text of the project is released on Ariel at the end of each year of the course, in the projects section.
- The project theme has a validity indicated in the descriptive file
- The final grade is a weighted average of the two grades of the parts and the project grade weighs 70% of the final grade.
- To register for the written part, you must use the classic sifaonline system
- To register for the discussion of the project, you must upload the required material to upload.di.unimi.it.
- two tests, one written and one project-based
- the written test will consist of 2 sub-parts, one with multiple choice answers and one with open answers;
- in general, the written test does not last more than an hour and a half.
- The project-based test requires the creation of a web application and the activity must be carried out individually
- The descriptive text of the project is released on Ariel at the end of each year of the course, in the projects section.
- The project theme has a validity indicated in the descriptive file
- The final grade is a weighted average of the two grades of the parts and the project grade weighs 70% of the final grade.
- To register for the written part, you must use the classic sifaonline system
- To register for the discussion of the project, you must upload the required material to upload.di.unimi.it.
INF/01 - INFORMATICS - University credits: 6
Laboratories: 24 hours
Lessons: 36 hours
Lessons: 36 hours
Professor:
Bellandi Valerio
Professor(s)
Reception:
On appointment
room 7008