Jump to content

Ruby Programming

50% developed
From Wikibooks, open books for an open world
Ruby was named after the precious gem.

Ruby is an interpreted, object-orientedprogramming language. Its creator, Yukihiro Matsumoto, aka “Matz”, released it to the public in 1995. Its history is covered here. Its many features are listed here.

The book is currently broken down into several sections and is intended to be read sequentially. Getting started will show how to install and get started with Ruby in your environment. Basic Ruby demonstrates the main features of the language syntax. The Ruby language section is organized like a reference to the language. Available modules covers some of the standard library. Intermediate Ruby covers a selection of slightly more advanced topics. Each section is designed to be self contained.

Table of Contents

[edit | edit source]

Getting started

[edit | edit source]
Overview75% developed
Installing Ruby50% developed
Ruby editors25% developed
Notation conventions75% developed
Interactive Ruby50% developed
Mailing List FAQ25% developed

Basic Ruby

[edit | edit source]
Hello world100% developed
Strings75% developed
Alternate quotes50% developed
Here documents75% developed
ASCII50% developed
Encoding50% developed
Introduction to objects75% developed
Ruby basics75% developed
Data types — numbers, strings, hashes and arrays 50% developed
Writing methods75% developed
Classes and objects50% developed
Exceptions0% developed

Ruby Semantic reference

[edit | edit source]

See also some rdoc documentation on the various keywords.

Built in Classes

[edit | edit source]

This is a list of classes that are available to you by default in Ruby. They are pre-defined in “core.”

Available Standard Library Modules

[edit | edit source]

These are parts of Ruby that you have available (in the standard library, or via installation as a gem). To use them you typically have to require some filename, for example require 'tracer' would make accessible to you the Tracer class.

You can see a list of basically all the (std lib ruby) modules available in the ruby source and lib readme. There are a several more modules available in the std lib, which are C based extensions. You can see their list here.

  • BigDecimal gives you a way to have arbitrary precision Decimal style numbers. Never succumb to rounding errors again!
  • Debugger gives you a way to step through debug your Ruby code.
  • Distributed Ruby (DRb) gives you a way to make remote procedure calls against objects in a different VM.
  • mkmf is a utility used to generate makefiles for ruby extensions.
  • Mutex gives you a way to control thread concurrency.
  • Net::HTTP gives you a way to download web pages.
  • Open3 gives you a way to run a sub-process and have easy access to its I/O.
  • OpenSSL is a wrapper to the OpenSSL (C) library, giving you access to secure socket connections.
  • Pathname gives you an easy way to manipulate filenames and create/remove files.
  • Profiler gives you a way to profile what is taking up the most time in your code.
  • OpenURI gives you a way to download files using ruby.
  • REXML is a way to parse XML in pure Ruby.
  • Ripper gives you a way to parse pure Ruby code into an AST.
  • Socket gives you access to Network connectivity.
  • Tracer gives you a way to see which lines of your code are being executed and in what order.
  • Win32::Registry gives you a way to query and edit the windows registry.
  • Win32API gives you a way to call into specific windows core methods easily.
  • WIN32OLE gives you a way to use Windows OLE.

Other Libraries

[edit | edit source]

GUI Libraries

[edit | edit source]

Here is info on some specifically:

Intermediate Ruby

[edit | edit source]

Here are some more in depth tutorials of certain aspects of Ruby.

Unit testing
RubyDoc
Rake
RubyGems
Running Multiple Processes
Using Network Sockets
Building C Extensions
Rails
Embedding Ruby within a separate C program
[edit | edit source]

Documentation

[edit | edit source]

Core Docs

[edit | edit source]
  • Ruby Documentation Homepage - various ruby documentations and tutorials, as well as information on how to update ruby's core docs should you so desire.

gem docs

[edit | edit source]
  • Ruby Toolbox - Find actively maintained & popular open source software libraries for the Ruby programming language

Learning Ruby

[edit | edit source]

Books

[edit | edit source]
Print
[edit | edit source]
Online
[edit | edit source]

Quick References

[edit | edit source]
close