Studio Game is a Ruby program developed based on Pragmatic Studio' Ruby Programming hands-on video course, and distributed as a Ruby gem. This program has been developed using all the strengths of Ruby including the following. Ruby Programming Environment * Installing Ruby on your favorite operating system (free exercise) * Running Ruby using the interactive Ruby shell (irb) and writing Ruby program files * Using Ruby's documentation system to get help * Installing external Ruby libraries using RubyGems * Troubleshooting common problems Ruby Language Constructs * Expressions and variables * Numbers, string, and symbols (free video & exercise) * Loops and conditional expressions * Arrays and hashes (free video & exercise on hashes) * Classes, modules, and structs Object-Oriented Programming * Using built-in Ruby classes * Defining your own classes with state and behavior (free video & exercise) * Creating unique objects * Telling objects what to do by calling methods * Modeling class-level inheritance relationships * Sharing code with mixins Object-Oriented Design Principles * Encapsulation * Separation of concerns * Polymorphism * Don't Repeat Yourself * Tell, Don't Ask Blocks and Iterators * Calling built-in methods that take blocks * Writing your own methods that yield to blocks * Implementing custom iterators * Effectively using blocks in your programs Organizing Ruby Code * Creating a Ruby project structure * Separating source files for easier reuse and testing * Namespacing to avoid naming clashes * Input/Output * Reading data from files * Writing data to files * Creating an interactive console prompt * Handling command-line input Unit Testing * Writing and running unit tests with RSpec * Test-driven development and the red-green-refactor cycle * Stubbing methods to control tests * Refactoring code, safely! Distribution * Conforming to RubyGems conventions * Writing a GemSpec * Building a RubyGem * Publishing a RubyGem to a public server Ruby Programming Idioms
Project
prag_studio_game
Studio Game is a Ruby program developed based on Pragmatic Studio' Ruby Programming hands-on video course, and distributed as a Ruby gem.
This program has been developed using all the strengths of Ruby including the following.
Ruby Programming Environment
* Installing Ruby on your favorite operating system (free exercise)
* Running Ruby using the interactive Ruby shell (irb) and writing Ruby program files
* Using Ruby's documentation system to get help
* Installing external Ruby libraries using RubyGems
* Troubleshooting common problems
Ruby Language Constructs
* Expressions and variables
* Numbers, string, and symbols (free video & exercise)
* Loops and conditional expressions
* Arrays and hashes (free video & exercise on hashes)
* Classes, modules, and structs
Object-Oriented Programming
* Using built-in Ruby classes
* Defining your own classes with state and behavior (free video & exercise)
* Creating unique objects
* Telling objects what to do by calling methods
* Modeling class-level inheritance relationships
* Sharing code with mixins
Object-Oriented Design Principles
* Encapsulation
* Separation of concerns
* Polymorphism
* Don't Repeat Yourself
* Tell, Don't Ask
Blocks and Iterators
* Calling built-in methods that take blocks
* Writing your own methods that yield to blocks
* Implementing custom iterators
* Effectively using blocks in your programs
Organizing Ruby Code
* Creating a Ruby project structure
* Separating source files for easier reuse and testing
* Namespacing to avoid naming clashes
* Input/Output
* Reading data from files
* Writing data to files
* Creating an interactive console prompt
* Handling command-line input
Unit Testing
* Writing and running unit tests with RSpec
* Test-driven development and the red-green-refactor cycle
* Stubbing methods to control tests
* Refactoring code, safely!
Distribution
* Conforming to RubyGems conventions
* Writing a GemSpec
* Building a RubyGem
* Publishing a RubyGem to a public server
Ruby Programming Idioms
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
Development
Dependencies
Development
~> 3.5
Project Readme