Ruby Metaprogramming – Complete Course
Ruby Metaprogramming – Complete Course, available at $49.99, has an average rating of 4.35, with 41 lectures, 3 quizzes, based on 346 reviews, and has 1800 subscribers.
You will learn about Understand the magic behind Ruby on Rails. Write better, more elegant & efficient Ruby code and tests. Join the "Ruby Guru" pride. Write own DSL, gems, etc. Understand most of the code in popular gems. This course is ideal for individuals who are Ruby developers who are familiar with the ruby language basics, syntax, etc. or Ruby on Rails developers who want to improve their code. or Developers who want to understand the magic behind Ruby on Rails code. or This course is probably not for you, if you are new to Ruby and want to learn the Ruby programming language basics. It is particularly useful for Ruby developers who are familiar with the ruby language basics, syntax, etc. or Ruby on Rails developers who want to improve their code. or Developers who want to understand the magic behind Ruby on Rails code. or This course is probably not for you, if you are new to Ruby and want to learn the Ruby programming language basics.
Enroll now: Ruby Metaprogramming – Complete Course
Summary
Title: Ruby Metaprogramming – Complete Course
Price: $49.99
Average Rating: 4.35
Number of Lectures: 41
Number of Quizzes: 3
Number of Published Lectures: 39
Number of Published Quizzes: 3
Number of Curriculum Items: 44
Number of Published Curriculum Objects: 42
Original Price: $49.99
Quality Status: approved
Status: Live
What You Will Learn
- Understand the magic behind Ruby on Rails.
- Write better, more elegant & efficient Ruby code and tests.
- Join the "Ruby Guru" pride.
- Write own DSL, gems, etc.
- Understand most of the code in popular gems.
Who Should Attend
- Ruby developers who are familiar with the ruby language basics, syntax, etc.
- Ruby on Rails developers who want to improve their code.
- Developers who want to understand the magic behind Ruby on Rails code.
- This course is probably not for you, if you are new to Ruby and want to learn the Ruby programming language basics.
Target Audiences
- Ruby developers who are familiar with the ruby language basics, syntax, etc.
- Ruby on Rails developers who want to improve their code.
- Developers who want to understand the magic behind Ruby on Rails code.
- This course is probably not for you, if you are new to Ruby and want to learn the Ruby programming language basics.
Just like many other ruby developers, I wanted to learn metaprogramming to make the leap from Ruby novice to Ruby pro. But, approaching the subject felt a bit intimidating. I tried to learn metaprogramming several times and every time I tried, all available materials were referring to even more complicated and less known concepts such as: eigenclasses, singleton classes, ruby object model, classes being objects themselves, etc.
So, I spent several months reading about all these concepts and synthesised all available material. At the end, it just “clicked”! Itturned out to be very simple! The problem was that there was no single resource where all this concepts were put together. So, I decided to produce this corse. I hope it will save your time and you will find it useful.
This video course will teach you ruby metaprogramming by introducing small, simple and less known ruby insights in each video. And once you learn them, metaprogramming will just start to make sense.
At the end of the course, you will:
- Be better Ruby developer who can write elegant code using Ruby’s metaprogramming features.
- Make your test code more concise by writing test that dynamically generate code that covers all test cases.
- Be able to understand and explain the magic behind the code/syntax in all popular gems.
- Better understand the Ruby language.
- and of course write your own DSL’s for your business domain (just like rspec, rake, etc.).
Course overview
Metaprogramming is such an integral part of the Ruby language, that in order to learn it, you need to understand the specific language features of Ruby. This features are less known and not covered in books. But, once you are introduced to them, metaprogramming starts to make sense. That’s why, the course will start by introducing several key Ruby language insights. After this section, you will understand why is it that some method or variable is not available in some scope and available in others or how scope changes in your code and more.
In the second section of the course, we will cover all the SDK methods that are involved in metaprogramming. Along the way, we will go through several examples that demystifies magic behind most popular gem code as well.
In the last section of the course, we will put everything we’ve learnt into practice and will build our own rspec, domain specific language and some of the rails most popular magical methods.
Course Curriculum
Chapter 1: Intoduction
Lecture 1: Welcome
Lecture 2: Course layout & Contact details
Chapter 2: Ruby Insights
Lecture 1: Everything is an Object
Lecture 2: Open classes, DuckType, Runnable code
Lecture 3: Material Revision
Lecture 4: Classes are objects
Lecture 5: Additional material & Revision: Classes are objects
Lecture 6: Scopes
Lecture 7: Additional material & Revision: Scopes
Lecture 8: Classes are modules with hierarchy
Lecture 9: Additional material & Revision: Classes are Modules
Lecture 10: Inheritance hierarchy
Lecture 11: Additional material & Revision: Inheritance Hierarchy
Lecture 12: Where variables and methods live?
Lecture 13: Revision: Where variables & methods live?
Lecture 14: Method lookup
Lecture 15: Revision: Method lookup
Lecture 16: Variables & Variable Scope
Lecture 17: Ruby Object Model
Lecture 18: Blocks, Closures, Binding
Chapter 3: Metaprogrammer's Toolkit
Lecture 1: Querying about classes / methods / variables
Lecture 2: Practice: Imitating Custom Language Keywords
Lecture 3: Defining classes / methods / variables
Lecture 4: Practice: Creating our own "attr_accessor" method
Lecture 5: Changing existing classes / methods / variables
Lecture 6: Practice: Implementing Rails’ “alias_method_chain"
Lecture 7: Evaluate code in different contexts
Lecture 8: Hook into changes in classes / methods / variables
Lecture 9: Practice: Write your own "ActiveSupport::Concern"
Lecture 10: Practice: Going through Rails' ActiveSupport::Concern code
Chapter 4: Practice and Excersises
Lecture 1: Task: Write your own .tap() method in Ruby 1.8
Lecture 2: Solution: Write and improve the .tap() method
Lecture 3: Task: Implement "Struct" class
Lecture 4: Solution: Custom implementation of "Struct" class
Lecture 5: Task: Write DSL for HTML code generation
Lecture 6: Solution: Write DSL for HTML code generator
Lecture 7: Example: Evaluating code in "isolated" scope
Lecture 8: Example: Sharing scopes among specific Classes or methods
Lecture 9: Exercise: Demystifying Rails magic
Instructors
-
Said Abduvaliev
Experienced Software Engineer
Rating Distribution
- 1 stars: 5 votes
- 2 stars: 3 votes
- 3 stars: 28 votes
- 4 stars: 103 votes
- 5 stars: 207 votes
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
You may also like
- Top 10 Language Learning Courses to Learn in November 2024
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024