Book Image

Comprehensive Ruby Programming

By : Jordan Hudgens
Book Image

Comprehensive Ruby Programming

By: Jordan Hudgens

Overview of this book

Ruby is a powerful, general-purpose programming language that can be applied to any task. Whether you are an experienced developer who wants to learn a new language or you are new to programming, this book is your comprehensive Ruby coding guide. Starting with the foundational principles, such as syntax, and scaling up to advanced topics such as big data analysis, this book will give you all of the tools you need to be a professional Ruby developer. A few of the key topics are: object-oriented programming, built-in Ruby methods, core programming skills, and an introduction to the Ruby on Rails and Sinatra web frameworks. You will also build 10 practical Ruby programs. Created by an experienced Ruby developer, this book has been written to ensure it focuses on the skills you will need to be a professional Ruby developer. After you have read this book, you will be ready to start building real-world Ruby projects.
Table of Contents (20 chapters)

Metaprogramming introduction

We will start learning about metaprogramming in Ruby. Let's begin with a practical example. Refer to the following screenshot:

This is a profile page for devcamp.com. You can see my full name listed on the top right-hand side. This name was collected by the application when I signed up, and when I logged in later, it was retrieved from the database and displayed.

To display this value, you can update your User class in the application and override the built-in to_s string method, like so:

def to_s
self.first_name + " " + self.last_name
end

Now if you call the to_s method on any objects created from the User class, you'll get the full name value.

So metaprogramming gives us the ability to open up classes and override existing methods to assign custom behavior to applications. This is by no means the full scope of what metaprogramming...