YoVDO

Computing: Art, Magic, Science - Part II

Offered By: ETH Zurich via edX

Tags

Computer Science Courses Software Engineering Courses Functional Programming Courses Inheritance Courses Concurrency Courses Design Patterns Courses

Course Description

Overview

Computing is a science. It’s an art, at least for those who practice it well, and it still retains much of its magic.

Part 1 of this course introduced the fundamental concepts, preparing you for the more advanced topics covered in this course!

Throughout this course, you will learn programming concepts and techniques, and practice them immediately through advanced browser-based tools that let you write programs, compile, run and test them against predefined test sets. You will see your results right away in your browser!

In this Part 2, we will discuss:

  • A major programming technique, inheritance, including Multiple inheritance: combining complementary abstractions
  • Selective exports for solid modular design of large systems
  • Functional programming with agents: going one level of abstraction higher or more
  • Concurrency: how to build applications that, so to speak, walk and chew gum at the same time
  • Design patterns: how you can benefit from the best architectural practices of the industry, ironed out over many decades
  • What makes a loop do its job right, with the notion of loop invariant
  • Important practical examples: how to write an interactive application with undo-redo, and the example of topological sort
  • Software engineering-- the construction not just of individual programs but also of complex, ambitious software systems

Join us in this computing and programming course to better understand the power and beauty of modern computer programming.


Taught by

Bertrand Meyer

Tags

Related Courses

Web Application Development: Basic Concepts
University of New Mexico via Coursera
Web Application Development: The Presentation Tier
University of New Mexico via Coursera
Técnicas Avançadas para Projeto de Software
Instituto Tecnológico de Aeronáutica via Coursera
Programmation objet immersive en Pharo
Inria (French Institute for Research in Computer Science and Automation) via France Université Numerique
Software Construction: Object-Oriented Design
The University of British Columbia via edX