Explore advanced Ruby programming concepts while understanding the distinctions between object-oriented and functional programming approaches.
Explore advanced Ruby programming concepts while understanding the distinctions between object-oriented and functional programming approaches.
Dive into the final part of this comprehensive programming languages course, focusing on Ruby and object-oriented programming. This intermediate-level course, taught by top instructor Dan Grossman, builds on Parts A and B to explore advanced topics such as subtyping, multiple inheritance, and the relationship between OOP and functional programming. Learn to implement interpreters, understand advanced OOP concepts, and gain a deep understanding of programming language design principles. Ideal for programmers looking to enhance their language design and implementation skills across different paradigms.
4.9
(455 ratings)
41,442 already enrolled
Instructors:
English
العربية, Deutsch, Tiếng Việt, 4 more
What you'll learn
Master Ruby programming for object-oriented and functional concepts
Understand and implement subtyping and inheritance in OOP
Compare and contrast object-oriented and functional decomposition
Implement advanced OOP concepts like multiple inheritance and mixins
Explore the relationships between generics, subtyping, and polymorphism
Develop skills to reason about and implement complex language features
Skills you'll gain
This course includes:
6.4 Hours PreRecorded video
2 quizzes, 2 programming assignments
Access on Mobile, Tablet, Desktop
FullTime access
Shareable certificate
Closed caption
Get a Completion Certificate
Share your certificate with prospective employers and your professional network on LinkedIn.
Created by
Provided by
Top companies offer this course to their employees
Top companies provide this course to enhance their employees' skills, ensuring they excel in handling complex projects and drive organizational success.
There are 6 modules in this course
This course delves into advanced programming language concepts using Ruby as the primary vehicle. Students explore object-oriented programming paradigms, comparing and contrasting them with functional programming approaches. The curriculum covers key topics such as subtyping, multiple inheritance, mixins, and generics. Participants gain hands-on experience in implementing interpreters and understanding the nuances of language design. The course emphasizes the synthesis of concepts from previous parts, providing a comprehensive understanding of programming language principles across different paradigms. Students will also explore advanced topics like bounded polymorphism and the relationships between various programming concepts.
Introduction, Course-Wide Information, and Software Installation (Start Here)
Module 1 · 1 Hours to complete
Section 8 and Homework 6 (First Module with Ruby)
Module 2 · 7 Hours to complete
Section 8 and Homework 6 (First Module with Ruby): Lesson Choices
Module 3 · 0 Hours to complete
Section 9 and Homework 7 (Second Module With Ruby)
Module 4 · 5 Hours to complete
Section 9 and Homework 7 (Second Module With Ruby): Lesson Choices
Module 5 · 0 Hours to complete
Section 10, Final Exam, and Course Wrap-Up
Module 6 · 4 Hours to complete
Fee Structure
Payment options
Financial Aid
Instructor
Influential Educator and Researcher in Programming Languages
Dan Grossman has been teaching programming languages at the University of Washington since 2003. He has been honored as “teacher of the year” by his undergraduate students twice and awarded second place once. His research encompasses the theory, design, and implementation of programming languages, along with their connections to computer architecture and software engineering, resulting in over 50 peer-reviewed publications.
Testimonials
Testimonials and success stories are a testament to the quality of this program and its impact on your career and learning journey. Be the first to help others make an informed decision by sharing your review of the course.
4.9 course rating
455 ratings
Frequently asked questions
Below are some of the most commonly asked questions about this course. We aim to provide clear and concise answers to help you better understand the course content, structure, and any other relevant information. If you have any additional questions or if your question is not listed here, please don't hesitate to reach out to our support team for further assistance.