About this Course

22,833 recent views

Learner Career Outcomes

14%

started a new career after completing these courses

20%

got a tangible career benefit from this course

14%

got a pay increase or promotion
Shareable Certificate
Earn a Certificate upon completion
100% online
Start instantly and learn at your own schedule.
Flexible deadlines
Reset deadlines in accordance to your schedule.
Approx. 18 hours to complete
English

Skills you will gain

Ruby (Programming Language)Programming LanguageObject-Oriented Programming (OOP)Subtyping

Learner Career Outcomes

14%

started a new career after completing these courses

20%

got a tangible career benefit from this course

14%

got a pay increase or promotion
Shareable Certificate
Earn a Certificate upon completion
100% online
Start instantly and learn at your own schedule.
Flexible deadlines
Reset deadlines in accordance to your schedule.
Approx. 18 hours to complete
English

Offered by

Placeholder

University of Washington

Syllabus - What you will learn from this course

Week
1

Week 1

1 hour to complete

Introduction, Course-Wide Information, and Software Installation (Start Here)

1 hour to complete
3 videos (Total 11 min), 3 readings
3 videos
Overview of Part C Concepts4m
Part C Course Structure3m
3 readings
Start Here!10m
Part C Software Installation and Use: Ruby and irb30m
Installing and Using SML and Emacs
7 hours to complete

Section 8 and Homework 6 (First Module with Ruby)

7 hours to complete
19 videos (Total 192 min), 6 readings, 1 quiz
19 videos
Classes and Objects12m
Object State13m
Visibility8m
A Longer Example12m
Everything is an Object8m
Class Definitions are Dynamic7m
Duck Typing7m
Arrays11m
Blocks11m
Using Blocks6m
Procs7m
Hashes and Ranges8m
Subclassing10m
Why Use Subclassing?7m
Overriding and Dynamic Dispatch10m
Method-Lookup Rules, Precisely11m
Dynamic Dispatch Versus Closures9m
Optional: Dynamic Dispatch Manually in Racket15m
6 readings
Section 8 Welcome Message7m
Section 8 Reading Notes
Code Files for All Section 8 Videos
Explanation of "Lesson Choices"5m
Homework 6 Instructions3h
Practice Problems for Another Game in Ruby

Section 8 and Homework 6 (First Module with Ruby): Lesson Choices

4 readings
4 readings
Homework 6 Detailed Peer-Assessment Instructions
Homework 6 Detailed Guidelines for Peer Assessment
Homework 6 Detailed Guidelines for Peer Assessment
Homework 6 Detailed Guidelines for Peer Assessment
Week
2

Week 2

5 hours to complete

Section 9 and Homework 7 (Second Module With Ruby)

5 hours to complete
9 videos (Total 91 min), 6 readings, 1 quiz
9 videos
Adding Operations or Variants11m
Binary Methods with Functional Decomposition7m
Double Dispatch14m
Optional: Multimethods6m
Multiple Inheritance10m
Mixins11m
Interfaces7m
Optional: Abstract Methods8m
6 readings
Section 9 Welcome Message5m
Section 9 Reading Notes
Code Files for All Section 9 Videos
Explanation of "Lesson Choices"5m
Homework 7 Instructions3h
Practice Problem for Double Dispatch and ML-to-Ruby

Section 9 and Homework 7 (Second Module With Ruby): Lesson Choices

4 readings
4 readings
Homework 7 Peer Review Detailed Instructions
Homework 7 Peer Review Detailed Instructions
Homework 7 Peer Review Detailed Instructions
Homework 7 Peer Review Detailed Instructions
Week
3

Week 3

5 hours to complete

Section 10, Final Exam, and Course Wrap-Up

5 hours to complete
10 videos (Total 92 min), 4 readings, 2 quizzes
10 videos
The Subtype Relation8m
Depth Subtyping8m
Optional: Java/C# Arrays9m
Function Subtyping11m
Subtyping for OOP11m
Generics Versus Subtyping8m
Bounded Polymorphism8m
Summarizing All We Have Learned10m
Saying Good-Bye :-)4m
4 readings
Section 10 Welcome Message5m
Section 10 Reading Notes
(Lack of) Section 10 Code Files
Information About the Exam (Required Reading)1h
2 practice exercises
Practice Final Exam1h
Actual Final Exam1h

Reviews

TOP REVIEWS FROM PROGRAMMING LANGUAGES, PART C

View all reviews

Frequently Asked Questions

More questions? Visit the Learner Help Center.