Table of contents

Table of Contents

About this book’s publication

Chapter 1: Before Reading This Book
1.1 Introduction
1.2 Overview of this book
1.3 About Ruby
1.4 Installing Ruby
1.5 Editors and IDEs
1.6 Trying to Run Ruby
1.7 Sample code in this book
1.8 Official Ruby Reference
1.9 Summary of this chapter

Chapter 2 Understanding the Basics of Ruby
2.1 Introduction
2.2 Basic Knowledge about Ruby
2.3 Strings
2.4 Numbers
2.5 True/False Values and Conditional Branching
2.6 Defining Methods
2.7 Example: Creating a FizzBuzz Program
2.8 More about Strings
2.9 More about Numbers
2.10 Learn more about boolean and conditional branching
2.11 More about Method Definitions
2.12 Other Basic Knowledge
2.13 Summary of this chapter

Chapter 3 Automating Tests
3.1 Introduction
3.2 Minitest Basics
3.3 Test Automation for FizzBuzz Programs
3.4 Summary of this Chapter

Chapter 4 Understanding Arrays and Iterations
4.1 Introduction
4.2 Arrays
4.3 Blocks
4.4 Array Methods Using Blocks
4.5 Range
4.6 Example: Creating an RGB Conversion Program
4.7 Learn more about Arrays
4.8 More about Blocks
4.9 Learn more about Range
4.10 Various Iterations
4.11 Control structures for iterative processing
4.12 Summary of this chapter

Chapter 5: Understanding hashes and symbols
5.1 Introduction
5.2 Hashes
5.3 Symbols
5.4 Continuation: About Hashes
5.5 Example: Create a length unit conversion program
5.6 More about hashes and keyword arguments
5.7 More about Symbols
5.8 Summary of this chapter

Chapter 6 Understanding Regular Expressions
6.1 Introduction
6.2 What are regular expressions?
6.3 Regular expression objects in Ruby
6.4 Example: Converting Ruby's hash notation
6.5 More about regular expression objects
6.6 Summary of this chapter

Chapter 7: Understanding Class Creation
7.1 Introduction
7.2 Fundamentals of Object-Oriented Programming
7.3 Defining a Class
7.4 Example: Creating a Ticket Checker Program
7.5 The self Keyword
7.6 Class Inheritance
7.7 Method Visibility
7.8 Learn More About Constants
7.9 Different Types of Variables
7.10 Advanced topics on class definitions and the Ruby language specification
7.11 Summary of this chapter

Chapter 8 Understanding Modules
8.1 Introduction
8.2 Overview of Modules
8.3 Defining methods using modules (include and extend)
8.4 Example: Creating the rainbow method
8.5 More About Defining Methods Using Modules
8.6 Creating Namespaces Using Modules
8.7 Creating Modules to Provide Functions and Constants
8.8 Creating Modules that Maintain State
8.9 Advanced Topics on Modules
8.10 Summary of this Chapter

Chapter 9 Understanding Exception Handling
9.1 Introduction
9.2 Catching Exceptions
9.3 Intentionally Raising Exceptions
9.4 Best Practices for Exception Handling
9.5 Example: Creating a Regular Expression Checker Program
9.6 More on Exception Handling
9.7 Summary of this chapter

Chapter 10 Understanding yield and Proc
10.1 Introduction
10.2 Defining Methods that Use Blocks and Yield
10.3 The Proc Object
10.4 Example: Creating a Word Synthesizer
10.5 More on the Proc Object
10.6 Summary of this Chapter

Chapter 11 Understanding Pattern Matching
11.1 Introduction
11.2 Basics of Pattern Matching
11.3 Usage Patterns of Pattern Matching
11.4 Example: Creating a Log Formatter
11.5 More about pattern matching
11.6 Summary of this chapter

Chapter 12. Learning Ruby debugging techniques
12.1 Introduction
12.2 How to Read a Backtrace
12.3 Commonly Raised Exception Classes and Their Causes
12.4 Checking the progress of your program
12.5 General Troubleshooting Methods
12.6 Summary of this chapter

Chapter 13. Other Topics on Ruby
13.1 Introduction
13.2 Working with Dates and Times
13.3 Working with Files and Directories
13.4 Reading and Writing Files of a Specific Format
13.5 Getting Environment Variables and Startup Arguments
13.6 Outputting Warnings When Deprecated Functions Are Used
13.7 eval, backquote literals, and the send method
13.8 Rake
13.9 gem and Bundler
13.10 Defining type information and type checking in Ruby (RBS, TypeProf, Steep)
13.11 The difference between "Ruby in Rails" and "plain Ruby
13.12 Summary of this chapter



Translated with (free version)