A collection of Ruby programming exercises, practice problems, and learning notes.
/ruby_lesson_notes- Personal notes and concept explanations/pak_test_<number>- Ruby coding exercises, solutions, and associated test files for exercises
- Data Types and Variables
- Local, Instance, Class, and Global Variables
- Constants
- String Manipulation and Interpolation
- Arrays and Array Methods
- Array Shortcuts (
%w[]) - Built-in Methods (
push,pop,shift,unshift)
- Array Shortcuts (
- Hashes (Objects)
- Creation and Access
- Nested Hashes and the
digMethod - Merging Hashes
- Conditional Statements (
if/elsif/else,unless) - Case Statements
- Modifier Conditionals
- Method Definition and Calling
- Implicit Returns
- User Input with
gets.chomp
- Classes and Objects
- Instance Methods vs Class Methods
- The
initializeMethod (Constructor) - Class Variables and Instance Variables
- Attribute Accessors (
attr_reader,attr_writer,attr_accessor)
- SOLID Principles
- Single Responsibility Principle (SRP)
- Open/Closed Principle (OCP)
- Liskov Substitution Principle (LSP)
- Interface Segregation Principle (ISP)
- Dependency Inversion Principle (DIP)
- Design Patterns
- Flexible Interfaces
- Dependency Injection
- Composition over Inheritance
- Code Organization
- Encapsulation
- Abstraction
- Inheritance
- Polymorphism
- Block Syntax (
do...endand{}) - Block Parameters and Variables
- Converting Blocks to Procs
- Understanding Lambda Behavior
- Method Parameters with
&block
- Regular Expressions Basics
- The
=~Operator - String Pattern Matching
- Launch School Materials
- Ruby Documentation
- Practice Problem Sets
This repository serves as a personal reference for Ruby programming concepts and practice exercises. Each concept includes comparisons with JavaScript equivalents to aid in understanding.