0345 4506120

Ruby Programming

Ruby is a high level Interpreted, Object Oriented, rapid development language deployed in many scenarios in the modern world.

This Ruby Programming course is designed to give delegates the knowledge to develop and maintain Ruby applications.

Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.

The delegate will learn and acquire skills as follows:

  • Declare variables and initialise them
  • Construct expressions with arithmetic, logical and relational operators
  • Use iterative type statements
  • Use conditional statements
  • Read/write files
  • Manipulate text using regular expression
  • Use and create Ruby Objects
  • Use built-in library functions

Who will the Course Benefit?

Developers who are required to write, maintain and test Ruby applications. This is an ideal course for anyone who wants to be able to make sense of code, if not  actually to produce it.

Learning Objectives

Course Objectives

This course aims to provide the delegate with the knowledge to be able to produce simple, object oriented Ruby applications that exploit all core elements of the  language to solve business problems.

Pre-Requisites

Requirements

Familiarisation with programming concepts is useful. This knowledge can be obtained by attendance on the Introduction to Programming course.

Follow-On Courses

  • Ruby on Rails
  • Apache Web Server
  • Introduction to MySQL
  • Python Programming 1
  • Perl Programming
  • PHP Programming
Notes:
  • Course technical content is subject to change without notice.
  • Course content is structured as sessions, this does not strictly map to course timings. Concepts, content and practicals often span sessions.

Course Content

Course Contents - DAY 1

Course Introduction

  • Administration and Course Materials
  • Course Structure and Agenda
  • Delegate and Trainer Introductions

Session 1: INTRODUCTION TO RUBY

  • What is Ruby
  • What is it used for
  • Installing Ruby?
  • Ruby Basics - objects, regular expressions, arrays, hashes, Object Orientation

Session 2: RUBY LANGUAGE ELEMENTS

  • Variables and constants
  • Operators
  • Assignments
  • Integer, float and string formats
  • Single and double quotes
  • Here documents
  • Labs

Session 3: CONTROL STRUCTURES

  • Blocks and if statement
  • Boolean and range operators
  • Conditionals - if, unless, case
  • Loops - while, for in, until
  • break, next, retry and redo
  • Labs

Session 4: CLASSES AND OBJECTS

  • Objects, classes and methods
  • Constructors and attributes
  • Instance and class variables
  • Local and global variables
  • Class and object methods
  • Including external files - load and require
  • Labs

Course Contents - DAY 2

Session 5: INPUT AND OUTPUT IN RUBY

  • Opening and closing files
  • Reading from and writing to files
  • Labs

Session 6: ARRAYS AND HASHES IN RUBY

  • Arrays and hashes
  • Building an array
  • The %w shortcut
  • Nesting arrays
  • Hash keys
  • Iterators
  • Labs

Session 7: OBJECT ORIENTATION

  • Inheritance
  • Base classes and subclasses
  • What's inherited
  • Overriding
  • Abstract classes
  • Polymorphism
  • Multiple Inheritances
  • Class structure
  • Visibility
  • Labs

Session 8: CLASSES AND OBJECT SCOPING

  • Public, private and protected visibility
  • Singletons and defs
  • Inheritance mixins
  • Destructors and garbage collection
  • Namespaces and modules
  • Hooks
  • Freezing objects
  • Labs

Course Contents - DAY 3

Session 9: OBJECT ORIENTATION TECHNIQUES

  • Clusters of classes
  • Programming and method standards
  • Formal Methods
  • Unified Modelling Language (UML)
  • Views

Session 10: STRINGS AND REGULAR EXPRESSIONS

  • Meta Characters
  • Anchors, literals, character groups and counts
  • Matching in Ruby
  • Modifiers i, o, x and m
  • Pattern matching variables
  • Labs

Session 11: SPECIAL VARIABLES AND PSEUDO-VARIABLES

  • ARGV and $0
  • Special variables
  • Environment variables
  • Pseudo-variables
  • Reserved words in Ruby
  • Labs

Session 12: EXCEPTIONS

  • begin and end
  • Raise and rescue
  • Throw and catch
  • labs

Privacy Notice

In order to provide you with the service requested we will need to retain and use your contact information in accordance with our Privacy Notice. If you choose to provide us with this information you explicitly consent to us using the information as necessary to provide the request service to you. If you do not agree please do not proceed to request the service from us.

Marketing Permissions

Would you like to receive our newsletter and other information on products and services which we think will be of interest to you by email. We will always treat your information with care and in accordance with our Privacy Notice. You are free to withdraw this permission at any time.

 

Online Courses

You may prefer an online course if you are looking for a flexible and cost-effective solution. Online courses allow you to study at your own pace, at a time that suits you.

We have the following eLearning options available:

Our Customers Include