Ruby Programming

מק"ט: #4567 | משך קורס: 32 שעות אק'

Ruby is a dynamic, interpreted, object-oriented language, similar to Python, Perl, and PHP. It is distributed under an open-source license and runs under many platforms. While the language is nearly 20 years old, it has only recently become popular for such tasks as Web development, server scripting, configuration management (powering both Chef and Puppet), text manipulation, and database programming.
This course is meant for experienced programmers who wish to learn the Ruby language. It introduces the core data types, and introduces how to write methods, classes, and modules. It introduces the standard library that comes with Ruby, as well as the large collection of “gems,” packages that can be downloaded, used and integrated into Ruby programs. We also discuss automated testing, text processing with regular expressions, and communication using a variety of network protocols.
Participants in this course can expect to learn the Ruby language, its basic data types, and its unusual object model. The course will not teach Web development, but will concentrate on the core Ruby language and how it can be used in a variety of ways.
The course contains a large number of hands-on exercises, such that participants will write real Ruby programs by the time they are done.
The course uses the latest version of Ruby (1.9.3), which works on Windows, Macintosh, and Unix/ Linux systems. The course will be taught using Linux; some basic familiarity with the Linux command line will be helpful.

הקורס פעיל לקבוצות מטעם ארגונים בלבד, ניתן לשלוח פנייה רק אם מדובר בקבוצה
*שדות חובה
PDF version


  • Write programs in the Ruby language
  • Create Ruby classes and modules, for better organization of their own code and integration into other code
  • Create and use Ruby gems
  • Test programs automatically
  • Process text using regular expressions
  • Write Ruby programs that communicate with remote computers

קהל יעד

  • Programmers interested in learning Ruby
  • Programmers who want to use systems such as Chef and Puppet, which are based on Ruby
  • Programmers who want to develop Web applications using Ruby on Rails, but don't yet know Ruby

תנאי קדם

Experience with an object-oriented programming language, including writing methods and classes.


The basics

  • Installing Ruby
  • Versions of Ruby
  • irb/pry, running from files


Data types

  • nil
  • Booleans
  • Numbers
  • Strings
  • Symbols
  • Arrays
  • Hashes
  • Sequences
  • Conditions
  • Loops
  • Blocks
  • Casting
  • Collections
  • sorting
  • collect, reject, detect, select, inject
  • Complex data structures





  • Defining
  • Parameters
  • Block parameters and yield
  • Invoking



  • What's an object?
  • Methods (revisited)
  • Singleton methods
  • Introspection
  • Classes
  • Instances
  • Instance methods
  • Instance variables
  • Attributes
  • Inheritance
  • Public, private, and protected
  • Class variables
  • Class methods
  • Singleton classes
  • Inheritance and singleton classes
  • Duck typing



  • Namespaces
  • Module methods
  • Modules as mixins
  • Enumerable
  • include vs. extend
  • Modules and inheritance


Ruby core


Ruby standard library


External libraries

  • require
  • Using Ruby gems
  • Creating Ruby gems


Solving problems with with Ruby objects



  • Trapping
  • Raising
  • Strategies


Introductory metaprogramming


Automated testing


Text processing with regular expressions


Network communication and protocols


Relational databases


Working with XML, YAML, and JSON


משך הקורס הינו 32 שעות אקדמאיות