YoVDO

Paradigms of Computer Programming – Fundamentals

Offered By: Université catholique de Louvain via edX

Tags

Algorithms and Data Structures Courses Object-oriented programming Courses Data Structures Courses Functional Programming Courses Data Abstraction Courses Concurrency Courses

Course Description

Overview

Louv1.1x and Louv1.2x together give an introduction to all major programming concepts, techniques, and paradigms in a unified framework. We cover the three main programming paradigms: functional, object-oriented, and declarative dataflow.

The two courses are targeted toward people with a basic knowledge of programming. It will be most useful to beginning programming students, but the unconventional approach should be insightful even to seasoned professionals.

Louv1.1x covers fundamental concepts. You’ll learn functional programming, its techniques and its data structures. You’ll use simple formal semantics for all concepts, and see those concepts illustrated with practical code that runs on the accompanying open-source platform, the Mozart Programming System.

Louv1.2x covers data abstraction, state, and concurrency. You’ll learn the four ways to do data abstraction and discuss the trade-offs between objects and abstract data types. You’ll be exposed to deterministic dataflow, the most useful paradigm for concurrent programming, and learn how it avoids race conditions.

To learn more about the practical organization of the two courses, watch the introductory video.


Taught by

Peter Van Roy

Tags

Related Courses

Prog Concepts/Methodology II
Chaffey College via California Community Colleges System
How to Code: Complex Data
The University of British Columbia via edX
Paradigms of Computer Programming – Abstraction and Concurrency
Université catholique de Louvain via edX
Data Science Decisions in Time: Information Theory & Games
Johns Hopkins University via Coursera
Data Abstraction and Structures
DeAnza College via California Community Colleges System