Computing: Art, Magic, Science - Part II

开始时间: 04/22/2022 持续时间: 6 weeks

所在平台: EdxArchive

课程类别: 其他类别

大学或机构: ETHx

授课老师: Bertrand Meyer Marco Piccioni Nadia Polikarpova Carlo A. Furia

课程主页: https://www.edx.org/archive/computing-art-magic-science-part-ii-ethx-cams-ii-x

课程评论:没有评论

第一个写评论        关注课程

课程详情

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

We also cover a few complementary topics including security, an ever-present concern today, and 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.

课程大纲

  • Multiple inheritance
  • Selective exports
  • Functional programming with agents
  • Concurrency
  • Design patterns
  • Loop invariants
  • Examples: undo-redo, topological sort
  • Introduction to software engineering

课程评论(0条)

课程简介

Learn functional programming, design patterns, loop invariants, and more in part 2 of this introductory programming course.

课程标签

0人关注该课程

主题相关的课程