Ruby Programming Training in Singapore

  • Learn via: Classroom / Virtual Classroom / Online
  • Duration: 3 Days
  • Price: Please contact for booking options
We can host this training at your preferred location. Contact us!

Ruby is a fully object oriented, dynamically typed scripting language. It has matured and expanded rapidly since its power was showcased by the ‘Ruby on Rails’ web framework. Today it is both the de facto replacement for the Perl scripting language and an increasingly important part of the Java and .NET platforms (via the JRuby and IronRuby interpreters).

This course provides experienced developers with everything they need to start using Ruby in production applications. The complete syntax of the language is covered, including detailed discussion of patterns, idioms and programming styles. Following this the course explores standard libraries and tools, and concludes with in-depth coverage of the JRuby interpreter and Java/Ruby integration.


Delegates must be experienced software developers with a minimum of three years programming experience in languages such as Java, C#, Perl and Python.

Introduction to Ruby

  • A brief history of the Ruby language
  • Comparing Ruby to Perl and Python
  • The available Ruby interpreters
  • Scenarios where Ruby is best

Key Characteristics of Ruby

  • Everything is an object
  • Dynamically typed
  • Flexible syntax and DSL’s
  • Lambdas and closures
  • Metaprogramming support

Basic Ruby Constructs

  • Types, literals and keywords
  • Block structure and operators
  • Conditionals and loop constructs
  • Working with strings and characters
  • The symbol table and symbol literals
  • Declaring and running regular expressions
  • The array and hash collection types

Basic Object Orientation

  • Classes, objects and references
  • Declaring classes with methods
  • Adding fields via constructors
  • Using attributes to define accessors
  • Visibilities supported by Ruby
  • Testing objects for equality
  • Converting between object types
  • Creating derived classes
  • Overriding inherited methods

Advanced Object Orientation

  • Using modules as namespaces and mixins
  • Declaring class level fields and methods
  • Creating class instance variables
  • Understanding singleton methods
  • Defining constant values in classes
  • Operator overloading and aliases
  • Using variable length argument lists
  • Raising and catching exceptions

Procs, Lambdas and Closures

  • Passing block arguments into methods
  • Creating and invoking procs and lambdas
  • Defining lambdas as literals in Ruby
  • How closures extend the lifetime of variables
  • Practical examples of using closures

Reflection and Metaprogramming in Ruby

  • Examining an object via introspection
  • Using Method objects to list and call methods
  • Handling unknown methods with method_missing
  • Dynamically adding methods via class_eval and define_method
  • Tracing type loading and program execution

Libraries Supplied with Ruby

  • Loading, reading and manipulating files
  • Creating multithreaded applications
  • Manipulating dates and times

Advanced Programming in Ruby

  • Applying functional programming styles in Ruby
  • Using Ruby to create Domain Specific Languages

Useful Ruby Tools

  • Listing, installing and updating RubyGems via the gem command
  • TDD using Test::Unit, Mocha and RSpec
  • Integration testing Web Applications using Watir
  • Automating your build environment using Rake
  • Building web applications via ‘Ruby On Rails’

The JRuby Implementation of Ruby

  • Why does the Java platform need Ruby?
  • Writing Ruby programs using JRuby
  • Invoking JRuby scripts from Java
  • Using and extending Java classes and interfaces
  • Converting between Ruby and Java types
  • Using Ruby and JRuby in Ant build files
  • Building web applications via ‘JRuby on Rails’


Contact us for more detail about our trainings and for all other enquiries!

Upcoming Trainings

Join our public courses in our Singapore facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

Classroom / Virtual Classroom
08 February 2025
Singapore, Woodlands, Marine Parade
3 Days
Classroom / Virtual Classroom
08 February 2025
Singapore, Woodlands, Marine Parade
3 Days
Classroom / Virtual Classroom
20 February 2025
Singapore, Woodlands, Marine Parade
3 Days
Classroom / Virtual Classroom
23 February 2025
Singapore, Woodlands, Marine Parade
3 Days
Classroom / Virtual Classroom
08 February 2025
Singapore, Woodlands, Marine Parade
3 Days
Classroom / Virtual Classroom
08 February 2025
Singapore, Woodlands, Marine Parade
3 Days
Classroom / Virtual Classroom
03 March 2025
Singapore, Woodlands, Marine Parade
3 Days
Classroom / Virtual Classroom
20 February 2025
Singapore, Woodlands, Marine Parade
3 Days
Ruby Programming Training Course in Singapore

Singapore, which is known officially as the Republic of Singapore, is a sovereign island city-state in maritime Southeast Asia and it consists of Singapore island and 60 islets. The capital city of Singapore is Singapore and the population of the island city-state is approximately 5,709,000. The official languages of Singapore are English, Chinese (Mandarin), Malay and Tamil.

Singapore is a year-round destination, but the best time to visit Singapore is from December to June. Between February to April, Singapore has the least amount of rain and the most sunshine, since it's the dry season. Singapore offers more than just luxury hotels and high-end shopping malls; there are many family-friendly attractions and historic places. Marina Bay Sands, Gardens by the Bay, Botanic Gardens and Singapore Flyer are the most popular tourist attractions.

Take advantage of our diverse IT course offerings, spanning programming, software development, business skills, data science, cybersecurity, cloud computing and virtualization. Our knowledgeable instructors will provide you with practical training and industry insights, delivered directly to your chosen venue in Singapore.
By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.