Unit WEB AND MOBILE PROGRAMMING WITH LAB.
- Course
- Informatics
- Study-unit Code
- A002065
- Curriculum
- In all curricula
- Teacher
- Marco Baioletti
- Teachers
-
- Marco Baioletti
- Hours
- 52 ore - Marco Baioletti
- CFU
- 6
- Course Regulation
- Coorte 2020
- Offered
- 2022/23
- Learning activities
- Caratterizzante
- Area
- Discipline informatiche
- Academic discipline
- INF/01
- Type of study-unit
- Opzionale (Optional)
- Type of learning activities
- Attività formativa monodisciplinare
- Language of instruction
- Italian
- Contents
- First part: web programming
Introduction to HTML and CSS
The programming language Javascript
A framework based on Javascript (for instance Angular 2)
A server-side programming language (for instance Node.js)
Second part: mobile programming
The programming language Kotlin
Programming in Android - Reference texts
- course notes written by the teacher
online documentations
Kotlin in Action
D. Jemerov and S. Isakova
Manning Publications, 2017
JavaScript: The Definitive Guide: Master the World's Most-Used Programming Language
David Flanagan
O'Reilly Media, 2020 - Educational objectives
- This course is an advanced course on programming. It examines advanced concepts on object oriented programming. It deals some topics with concurrency management
and functional programming. It explores the details of web and mobile programming.
The main purpose of this course is to provide to the students the tools and the required knowledge to design and implement applications in mobile and web environment.
The main knowledges acquired in this course will be
*how to program a web application in the client side
*how to program a web application in the server side
*advanced concept of object-oriented programming
*introduction to concurrent and functional programming
*moblie programming
The main skills acquired will be
*how to use development tools
*design and implementing user interfaces
*realization of small-middle size web and mobile applications - Prerequisites
- procedural programming
object-oriented programming
a basic course of computer networks - Teaching methods
- theoretical lessons
examples using a computer
a possible flipped classroom - Learning verification modality
- The exam comprises two tests
1) a project to be developed as an individual homework. The purpose of this test is to check the knowledge about web and mobile programming and application development
2) an oral test, where the student should present her/his project and
discuss some theoretical topics seen in the course.
The purpose of this test is to ascertain the knowledge level, understanding capabilities and communication skills acquired by the student.
Students who do not speak Italian can do the exam in French or English. - Extended program
- First part: web programming
Languages for web design
1. HTML
2. CSS
3. XML
The Javascript programming language
1. basic notions
2. procedural programming
3. definition and use of functions
4. object oriented programming
5. event handling
6. DOM and BOM
7. asynchronous programming
A framework based on Javascript (for instance, Angular 2)
A server-side programming language (for instance, Node.js)
1. Handling requests from clients
2. Template pages
3. Access to databases
Second part: mobile programming
Kotlin programming language
1. Basic notions
2. Procedural programming
3. object oriented programming
4. Contenitors
5. Functional programming
6. Concurrent programming
Android programming with Kotlin
1. Basic notions of Android
2. Creating and managing the user interface
3. Local data access
4. Remote resource access
5. Localization and sensors