We had an "object oriented Ruby" morning on today's course. "But everything's an object in Ruby" you'll tell me and you're sort of right (we could argue about what symbols and code blocks are), but there are certain elements of object orientation which require specific coverage.
Here are links to three examples:
[link] - a straightforward example of a class definintion, no inheritance, nothing fancy (thout it does have an attribute accessor)
[link] - a demonstration that shows inheritance, embedding of classes within a module, static variable and methods, operator overloading, a singleton method and much more. There are plenty of comments in the source code of this example.
[link] - showing the difference between object and class (dymanic and static) variables.
The following new examples have also been added in other areas:
[link] - command line parameters to a Ruby program
[link] - BEGIN and END blocks, and autosplit
[link] - a comparison of symbols and strings in Ruby
[link] Commenting a regular expression in Ruby
(written 2010-02-03, updated 2010-02-04)
Associated topics are indexed under
R108 - Ruby - More Classes and Objects [3260] Ruby - a training example that puts many language elements together to demonstrate the whole - (2011-04-23)
[3158] Ruby training - some fresh examples for string handling applications - (2011-02-05)
[3154] Changing a class later on - Ruby - (2011-02-02)
[3142] Private and Public - and things between - (2011-01-22)
[2980] Ruby - examples of regular expressions, inheritance and polymorphism - (2010-10-02)
[2977] What is a factory method and why use one? - Example in Ruby - (2010-09-30)
[2717] The Multiple Inheritance Conundrum, interfaces and mixins - (2010-04-11)
[2620] Direct access to object variable (attributes) in Ruby - (2010-02-02)
[2616] Defining a static method - Java, Python and Ruby - (2010-02-01)
[2604] Tips for writing a test program (Ruby / Python / Java) - (2010-01-29)
[2603] Ruby objects - a primer - (2010-01-29)
[2601] Ruby - is_a? v instance_of? - what is the difference? - (2010-01-27)
[2292] Object Orientation in Ruby - intermediate examples - (2009-07-16)
[1587] Some Ruby programming examples from our course - (2008-03-21)
[1217] What are factory and singleton classes? - (2007-06-04)
[656] Think about your design even if you don't use full UML - (2006-03-24)
[184] MTBF of coffee machines - (2005-01-20)
R109 - Ruby - Strings and Regular Expressions [3424] Divide 10000 by 17. Do you get 588.235294117647, 588.24 or 588? - Ruby and PHP - (2011-09-08)
[2621] Ruby collections and strings - some new examples - (2010-02-03)
[2614] Neatly formatting results into a table - (2010-02-01)
[2608] Search and replace in Ruby - Ruby Regular Expressions - (2010-01-31)
[2295] The dog is not in trouble - (2009-07-17)
[2293] Regular Expressions in Ruby - (2009-07-16)
[1891] Ruby to access web services - (2008-11-16)
[1887] Ruby Programming Course - Saturday and Sunday - (2008-11-16)
[1875] What are exceptions - Python based answer - (2008-11-08)
[1588] String interpretation in Ruby - (2008-03-21)
[1305] Regular expressions made easy - building from components - (2007-08-16)
[1195] Regular Express Primer - (2007-05-20)
[987] Ruby v Perl - interpollating variables - (2006-12-15)
[986] puts - opposite of chomp in Ruby - (2006-12-15)
[970] String duplication - x in Perl, * in Python and Ruby - (2006-12-07)
R110 - Ruby - Special Variables and Pseudo-Variables [2613] Constants in Ruby - (2010-02-01)
[2296] Variable scope - what is it, and how does it Ruby? - (2009-07-18)
[1586] Variable types in Ruby - (2008-03-21)
[990] Ruby - Totally Topical - (2006-12-16)
Some other Articles
Saturdays out from Melksham - to Oxford, to Didcot or to SwindonOn Malachite GreenBoth feet on the same pavementSkyline and looking up in LondonObject Oriented Ruby - new examplesHandling unusual and error conditions - exceptionsPassing code to procedures and yield in RubyWhat are Ruby Symbols?