Help

Course Information

Adv.Distribut.Programming Paradigms (CSC 3374)

Term: 2025-2026 Academic Year - Fall Semester

Faculty

Omar IRAQI HOUSSAINI
Email address is hidden, click here to email

Schedule

Tue-Thu, 2:30 PM - 3:50 PM (9/8/2025 - 12/27/2025) Location: MAIN

Description

This course provides theoretical knowledge about, and practical skills in advanced programming paradigms. It builds on the background acquired in introductory programming courses and other prerequisite courses, to tackle programming models used in professional, enterprise-grade software development. Covered topics are organized in five parts, where each builds on previous ones:

†Part I. Programming for communication: Client/server model and programming

†Part II. Programming for integration: Service-oriented model and programming

†Part III. Programming for performance: Multithreaded and asynchronous programming

†Part IV. Programming for extensibility: Functional and reactive programming

†Part V. Programming for scalability: Distributed and parallelized programming

This course adopts the 3 most popular programming languages: Python, JavaScript and Java. It uses each time the most suitable language(s) to support and illustrate the concepts covered in each part.