First cycle
degree courses
Second cycle
degree courses
Single cycle
degree courses
School of Science
COMPUTER SCIENCE
Course unit
CONCURRENT AND DISTRIBUTED PROGRAMMING
SC01122886, A.A. 2018/19

Information concerning the students who enrolled in A.Y. 2016/17

Information on the course unit
Degree course First cycle degree in
COMPUTER SCIENCE
SC1167, Degree course structure A.Y. 2011/12, A.Y. 2018/19
N0
bring this page
with you
Number of ECTS credits allocated 6.0
Type of assessment Mark
Course unit English denomination CONCURRENT AND DISTRIBUTED PROGRAMMING
Website of the academic structure http://informatica.scienze.unipd.it/2018/laurea
Department of reference Department of Mathematics
Mandatory attendance No
Language of instruction Italian
Branch PADOVA
Single Course unit The Course unit can be attended under the option Single Course unit attendance
Optional Course unit The Course unit can be chosen as Optional Course unit

Lecturers
Teacher in charge ARMIR BUJARI INF/01
Other lecturers MICHELE MAURO

ECTS: details
Type Scientific-Disciplinary Sector Credits allocated
Core courses INF/01 Computer Science 6.0

Course unit organization
Period First semester
Year 3rd Year
Teaching method frontal

Type of hours Credits Teaching
hours
Hours of
Individual study
Shifts
Practice 2.25 18 38.25 No turn
Lecture 3.75 30 63.75 No turn

Calendar
Start of activities 01/10/2018
End of activities 18/01/2019

Examination board
Board From To Members of the board
9 a.a 2018/2019 01/10/2018 28/02/2020 BUJARI ARMIR (Presidente)
MAURO MICHELE (Membro Effettivo)
BRESOLIN DAVIDE (Supplente)
CONTI MAURO (Supplente)
FILE' GILBERTO (Supplente)
8 a.a. 2017/2018 01/10/2017 28/02/2019 BUJARI ARMIR (Presidente)
BRESOLIN DAVIDE (Membro Effettivo)
CONTI MAURO (Membro Effettivo)
FILE' GILBERTO (Membro Effettivo)
MAURO MICHELE (Membro Effettivo)

Syllabus
Prerequisites: Computer Programming.
Formal prerequisite courses: Object-Oriented Programming.
Target skills and knowledge: This course introduces the Java programming language at different abstraction levels: from the object-oriented programming to the modern concurrent and distributed computing.
Examination methods: The exam consists in a written test and an optional oral examination.
Assessment criteria: The written test assesses both the knowledge of the Java language and the ability to write correct solutions for problems with concurrency issues.
The oral test assesses the correctness and functionality of the distributed application implemented by the student.‚Äč The discussion also tests the ability of the student to explain the program and justify its basic choices.
Course unit contents: 1. Brief overview of the object-oriented programming in Java:
- classes, objects, inheritance, polymorphism
- class design: abstract classes, interfaces, inner classes
- graphical user interfaces: components and event-driven programming
2. Functional programming in Java: Lambda and Stream API
3. Concurrent programming: thread, scheduling, thread, synchronization and communication.
4. Distributed programming: stream and serialization, socket.
Planned learning activities and teaching methods: Lecture presentations with associated class problems. The student is also required to implement an assigned project as a full Java program.
Textbooks (and optional supplementary readings)
  • Silvia Crafa, Oggetti, Concorrenza, Distribuzione. Programmare a diversi livelli di astrazione,. --: Editore Esculapio, 2014. Cerca nel catalogo
  • Oracle, Java 8 Lambdas & Stream API. --: --, --.

Innovative teaching methods: Teaching and learning strategies
  • Lecturing
  • Laboratory
  • Case study
  • Problem solving

Sustainable Development Goals (SDGs)
Quality Education Sustainable Cities and Communities