PROGRAMMING TECHNIQUES FOR DISTRIBUTED SYSTEMS

Academic Year 2020/2021 - 1° Year
Teaching Staff: Davide PATTI
Credit Value: 9
Scientific field: ING-INF/05 - Information processing systems
Taught classes: 49 hours
Exercise: 30 hours
Term / Semester:
ENGLISH VERSION

Learning Objectives

Knowledge and understanding

Knowledge of Java, with particular reference to tools for distributed programming. Ability to integrate the different theoretical notions regarding object-oriented programming in order to structure the architecture of an application according to a set of design requirements

Applied knowledge

Ability to report what has been learned in the ability to deploy applications in commonly used distributed environments.


Course Structure

1. Object-oriented programming (3 CFU)

2. The Java programming language (3 CFU): JAVA. General features, data types, operators, expressions, control structures: Classes, objects, interfaces, inheritance and polymorphism, packages, concurrency, exception management, events. Input / Output. Basic graphics, applets

3. Programming for distributed systems JAVA: Concurrency. Socket. Networking.


Detailed Course Content

1. Object-oriented programming: Definitions, properties, classification of programming languages. Object-oriented programming.

2. The Java programming language: JAVA. General features, data types, operators, expressions, control structures: Classes, objects, interfaces, inheritance and polymorphism, packages, concurrency, exception management, events. Input / Output. Basic graphics, applets

3. Programming for distributed systems JAVA: Concurrency. Networking. Sockets. RMI.


Textbook Information

Java: The Complete Reference, Herbert Schildt