A Modern, Object Oriented, Portable Scripting language.
Duration: 4 days
• Price: £1530.00 +VAT
(with hotel room), or
(without room), •
Venue: Melksham, Wiltshire
COURSE START DATES
Usually scheduled to meet customer needs or run as a private course. Please email for details
This quickly moving course covers the fundamentals
of the Ruby language for programmers already conversant with
programming in another object oriented language.
Ruby is very much an object oriented language, and we concentrate on
its implementation of objects after covering the fundamental
syntax and structures of the language, comparing and
contrasting them to Perl and Java.
Our course concludes with sections covering the user of Ruby
on the Web, using Ruby to handle relational databases
through SQL, and Graphic User Interfaces such as Ruby/Tk.
If you're learning Ruby to use it within the Rails framework, please
stay on for an extra day - our Ruby on Rails training course extension.
Experience in programming another language
such as Perl, Java, C, C++ or Basic.
Getting the most from your Well House Consultants course
Ruby is an object oriented scripting language that has rapidly
grown in use and favour across a wide variety of applications in the past
two years. Perhaps THE biggest use or Ruby is within the Rails framework,
where it is used to provide the programming power behind web based applications
that can be quickly and efficiently written.
|Introduction (module R101) What is Ruby?
What is it used for?
Where do I get and install Ruby?
Core facilities, built-in library and standard library.
Basic concepts - object orientation, regular expressions, arrays, hashes, etc.
|Basic Ruby Language Elements (module R103) Structure of statements and comments.
Variables and constants.
Assignments, calculations, etc.
Integer, float and string formats.
Single and double quotes, here documents, general strings.
|Control Structures (module R104) Blocks and the if statement.
Comparative, boolean and range operators.
Conditionals - if, unless, case, etc.
Loops - while, for in, until, etc.
break, next, retry and redo.
defined? and ternary operators.
|Object Orientation: Individual Objects (module Q906) History - unstructured and structured code.
Introduction to object oriented programming.
Classes and methods.
Static and nonstatic.
Instances, constructors and destructors.
Accessing members of a class.
Loading and using classes.
Direct access to variables.
Encouraging class use.
|Classes and Objects (module R105) Objects, classes and methods.
Constructors and attributes.
Instance and class variables.
Local and global variables.
Class and object methods.
Including files - load and require.
|Input and Output in Ruby (module R106) Opening and closing files.
Reading and writing from files.
|Collections (Arrays and Hashes) in Ruby (module R107) What is a collection?
Arrays and hashes.
Constructing an array. The %w shortcut.
Hash keys, iterators, etc.
|Object Orientation: Composite Objects (module Q909) Review of object orientation basics.
Base classes and subclasses.
Overriding and abstract classes.
Multiple inheritance and alternatives.
Hierarchy and visibility.
A note on design.
|More Classes and Objects (module R108) Public, private and protected visibility.
Singletons and defs.
Inheritance mixins, and super.
Destructors and garbage collection.
Namespaces and modules.
Calling methods with code blocks.
Looking inside objects - reflection.
|Object Orientation: Design Techniques (module Q907) Overview - why design?
OOD, OOA, OOP.
Waterfall, spiral and Incremental models.
Micro, macro and specification.
Booch, Yourdon and the OO design wars.
Unified Modeling Language (UML).
Views, diagrams, model elements and general mechanisms.
Extending UML - stereotypes, tagged values and constraints.
Functions of tools such as Rational Rose.
Drawing support, model repository, navigation, code generation.
Configuration, version control and associated tools.
|Strings and Regular Expressions (module R109) Anchors, literals, character groups and counts.
Matching in Ruby.
Modifiers i, o, x and m.
Pattern matching variables.
|Special Variables and Pseudo-Variables (module R110) ARGV, $0 and friends - the command line.
Other special variables from $: through $$ to $<.
Reserved words in Ruby.
|Exceptions. (module R111) begin and end (and a mention of BEGIN and END).
Raise and rescue.
Throw and catch.
|Ruby Miscellany (module R119) Singletons.
The comparator interface.
Additional standard functions and operators.
|Parallelism (module R112) Parallel assigments. Yield.
Threads, the thread scheduler and thread exceptions.
Thread critical, Mutex and Condition variables.
Spawning processes and controlling children.
Allowing your children to go independent.
|Ruby on the Web (module R114) CGI and the Ruby Apache Module.
Using cgi.rb; URL decoding, forms, sessions, cookies, etc.
Embedding Ruby in HTML - the <% <%= and <%# tags.
|Ruby GUIs, XML, SQL Database Connectivity (module R117) Ruby/Tk, Ruby/GTK, Glade, etc.
FOX and FXRuby.
VisualuRuby, SWin and VRuby.
SAX and DOM - XMLParser and others.
SQL and ODBC connection.
Using Ruby/DBI to connect to MySQL, Oracle, etc.
TUTOR and COURSE AUTHOR
Graham Ellis - firstname.lastname@example.org
] [about Graham
Public courses run at
Well House Manor
- our own
purpose fitted training centre and business hotel / conference centre in
• Download Melksham Map - [pdf file (750k)
] • Google Map - [Link
|| 2 students
|| 3 students
|| For 4 or more students
from the same company,
please consider a private course.
| With hotel room
(£1836.00 inc VAT)
(£1500.00 inc VAT)
| With hotel rooms
(£3612.00 inc VAT)
(£2940.00 inc VAT)
| With hotel rooms
(£5388.00 inc VAT)
(£4380.00 inc VAT)
• Multiple discount applies to bookings for second and subsequent delegates on the same running of a course, and on same order.
• Hotel rooms are available for arrival the night before the course starts, for departure after the end of the course on the last day.
If you're going to be using Ruby on Rails, please stay on for
an extra day to attend our Ruby
on Rails training course
Upon completion of your course, you'll have online access to the source code of
all the examples from the course, and you'll have access to the
"Ask the Tutor" forum
where you can raise questions. We also encourage you to email the tutor, and
to visit us again to use our library as appropriate.
Certification? - [Link
FOR FURTHER INFORMATION
Public (scheduled) courses
For more information about our public courses in general, such as class size, course times, materials provided, special requests, accommodation list, finding our centre, etc.
Terms and Conditions
Covering topics such as delegate substitution, payment, cancellation policy and other matters.