About this Course

21,050 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
Subtitles: 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
Subtitles: English

Offered by

University of Washington logo

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

  • Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:

    • The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
    • The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
  • When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

  • You will be eligible for a full refund until two weeks after your payment date, or (for courses that have just launched) until two weeks after the first session of the course begins, whichever is later. You cannot receive a refund once you’ve earned a Course Certificate, even if you complete the course within the two-week refund period. See our full refund policy.

  • Yes, Coursera provides financial aid to learners who cannot afford the fee. Apply for it by clicking on the Financial Aid link beneath the "Enroll" button on the left. You’ll be prompted to complete an application and will be notified if you are approved. Learn more.

More questions? Visit the Learner Help Center.