Careers360 Logo
Interested in this College?
Get updates on Eligibility, Admission, Placements Fees Structure
Compare

Quick Facts

Medium Of InstructionsMode Of LearningMode Of Delivery
EnglishSelf StudyVideo and Text Based

Course Overview

Coursera provides an array of courses in diverse fields. These courses include E-learning videos, projects, community forums, peer reviews, and practice exercises. This course is being offered by the University of Washington on Coursera. 

The framework of the Programming Languages, Part C course by Coursera has been designed to give the learners exposure to the basic concepts of programming languages. This course strongly focuses on functional programming as it is important for learning how to write robust, elegant, composable and reusable programmes.

The course offers a blended curriculum which trains the participants in using language constructs effectively and designing correct and elegant programs. The coursework utilizes the languages Ruby, Racket, and ML as vehicles for teaching the concepts which will make the participants more efficient in programming in any language and learning the new ones at the same time. This course, Part C is a part of a 3- part course. The instructor for this course is Dan Grossman, a professor at the University of Washington who has been teaching programming languages at the University since 2003. He holds the J. Ray Bowen Professorship For Innovation In Engineering Education.

The Highlights

  • Offered by University of Washington 
  • Certification by Coursera 
  • Programme is online 
  • 18 hours course

Programme Offerings

  • Practice Exercises
  • Graded Quizzes
  • peer reviews
  • practical exam
  • E-learning Videos
  • reading resources

Courses and Certificate Fees

Fees InformationsCertificate AvailabilityCertificate Providing Authority
INR 2480yesCoursera

Fees payable for Programming Languages, Part C course by Coursera  :

CourseFees

Total Fees Payable

Rs. 2,480/-


Eligibility Criteria

Education

Candidates who want to pursue the Programming Languages, Part C course by Coursera should have completed part A and B as this is a 3 part course.

Certification Qualifying Details

To receive the course completion certificate by Coursera participants have to pay the course certificate fee, submit the assignments given during the course and complete their name verification process.

What you will learn

Programming skills

After the completion of the Programming Languages, Part C course by Coursera the participants will have firm knowledge about the following:

  • The basic concepts of Ruby
  • Understanding overriding and Dynamic Dispatch
  • Learning about object-oriented programming
  • Learning about the Binary Methods with Functional Decomposition
  • Understanding the Subtype Relation
  • Learning how subtyping relates to generics

Who it is for


Application Details

To enrol for the Programming Languages, Part C course by Coursera:

Step 1: Visit the course page. https://www.coursera.org/learn/programming-languages-part-c

Step 2: Click on Enroll for free.

Step 3: Create an account with Coursera and choose between the option of either purchasing the course or accessing the full course without a certificate.

Step 4: Candidates who choose to access the course will be given access to the course.

The Syllabus

Videos
  • Welcome to Part C
  • Overview of Part C Concepts
  • Part C Course Structure
Readings
  • Start Here!
  • Part C Software Installation and Use: Ruby and irb 
  • Installing and Using SML and Emacs

Videos
  • Introduction to Ruby
  • Classes and Objects
  • Object State
  • Visibility
  • A Longer Example
  • Everything is an Object
  • Class Definitions are Dynamic
  • Duck Typing
  • Arrays
  • Blocks
  • Using Blocks
  • Procs
  • Hashes and Ranges
  • Subclassing
  • Why Use Subclassing?
  • Overriding and Dynamic Dispatch
  • Method-Lookup Rules, Precisely
  • Dynamic Dispatch Versus Closures
  • Optional: Dynamic Dispatch Manually in Racket
Readings
  • Section 8 Welcome Message
  • Section 8 Reading Notes
  • Code Files for All Section 8 Videos
  • Explanation of "Lesson Choices"
  • Homework 6 Instruction
  • Practice Problems for Another Game in Ruby
Peer Review
  • Homework 6 Peer Review

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
Programming Assignments
  • Homework 6 (Ruby 2.0)
  • Homework 6 (Ruby 2.1)
  • Homework 6 (Ruby 2.2)
  • Homework 6 (Ruby 2.3)

Videos
  • OOP Versus Functional Decomposition
  • Adding Operations or Variants
  • Binary Methods with Functional Decomposition
  • Double Dispatch
  • Optional: Multimethods
  • Multiple Inheritance
  • Mixins
  • Interfaces
  • Optional: Abstract Methods
Readings
  • Section 9 Welcome Message
  • Section 9 Reading Notes
  • Code Files for All Section 9 Videos
  • Explanation of "Lesson Choices"
  • Homework 7 Instructions
  • Practice Problem for Double Dispatch and ML-to-Ruby
Peer Review
  • Homework 7

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
Programming Assignments
  • Homework 7 (Ruby 2.0 and SML)
  • Homework 7 (Ruby 2.1 and SML)
  • Homework 7 (Ruby 2.2 and SML)
  • Homework 7 (Ruby 2.3 and SML)

Videos
  • Subtyping From the Beginning
  • The Subtype Relation
  • Depth Subtyping
  • Optional: Java/C# Arrays
  • Function Subtyping
  • Subtyping for OOP
  • Generics Versus Subtyping
  • Bounded Polymorphism
  • Summarizing All We Have Learned
  • Saying Good-Bye
Readings
  • Section 10 Welcome Message
  • Section 10 Reading Notes
  • (Lack of) Section 10 Code Files
  • Information About the Exam (Required Reading)
Assignments
  • Practice Final Exam
  • Actual Final Exam

Instructors

Dan Grossman
Professor

UW Washington

Articles

Ask
Question
Ask

Student Community: Where Questions Find Answers

Ask and get expert answers on exams, counselling, admissions, careers, and study options.
Back to top