Unit COMPUTER PROGRAMMING 3

Course
Informatics
Study-unit Code
GP004142
Curriculum
In all curricula
Teacher
Marco Baioletti
Teachers
  • Marco Baioletti
Hours
  • 42 ore - Marco Baioletti
CFU
6
Course Regulation
Coorte 2019
Offered
2021/22
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
Kotlin programming language and advanced concepts of object oriented programming, concurrency
and mobile programming

Javascript language and frameworks client-side and server-side web programming
Reference texts
course notes provided by the teacher

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
The course represents an advanced course on programming and examines advanced concepts of object oriented programming. Moreover it also examines some aspects related to the concurrency and functional programming.

The main purpose of this course is to provide the students the tools and knowledge needed to develop object oriented application for desktop, mobile and web environments,

Main knowledge acquired will be
*advanced elements of object oriented programming
*concurrency
*elementary concepts of functional programming
*mobile programming
*client-side and server-side web programming

Main competences will be
*being able to use development tools
*designing user interfaces
*developing small-middle size applications
Prerequisites
Imperative programming
Object-oriented programming (Java)
Teaching methods
Lectures on all the subjects of the course, with illustration of some programming examples
Other information

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 object oriented 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
Introduction to Kotlin programming language and comparison with Java
Object oriented programming concepts
Collections
Concurrency
Introduction to Functional programming
Concurrency in Kotlin
Creating mobile apps in Android with Kotlin

Introduction to Javascript language
Client-side web programming
Server-side programming with Node.js
Condividi su