Ruby and Ruby on Rails

3 day hands on workshop (RAT 801)

 

 

Ruby on Rails really is the high-productivity web-application development environment you’ve heard about. In this three day course, you’ll be taken through the basics of Ruby, before moving on to developing a real web application using Ruby on Rails. You’ll be amazed how much you’ll be able to achieve!

 

Pre-requisites:

  • A good knowledge of at least one object-oriented programming language.

 

At the end of this course, you will be able to:

  • Develop programs using the Ruby programming language
  • Fully understand the structure of a Rails application
  • Interface with relational databases using Rails’ ActiveRecord module
  • Develop web based UIs using Rails’ ActionView templates and eRuby (embedded Ruby)
  • Control applications using Rails’ ActionController classes
  • Undertake test-driven development using Rails
  • Be able to undertake productive real-world development using Rails

 

Day 1 – Intro to Ruby:

·         Introduction

·         Ruby Basics

o        Hello World

o        variables and methods

o        control structures

o        blocks

o        classes including “open classes in Ruby”

o        modules/mixins

o        arrays and hashes including Enumerable

o        Other built in objects (Regexes, IO)

·         Basics of Test Driven Development

o        Thinking about testing

o        Test::Unit

·         Test driven examples (building a simple app from tests)

Day 2 – Intro to Rails:

·         MVC Basics

·         Rails Directory Structure

·         Intro to Rails Environments

·         Creating Models and Migrations

o        Crud Basics

o        Validations

o        Testing models and validation with Unit Tests

o        Associations

·         Controllers and Views

o        Embedded Ruby (ERB) basics

o        Layouts and Helpers

o        Sessions and Cookies

o        Testing Controllers and Views with Functional Tests

·         Test driven examples (building a simple blog from tests)

 

 

Day 3 – More Rails:

·    Filters and verify

·    Routing

·    Plugins

·     Ajax with RJS

o        Testing RJS

·    Email with ActionMailer

·    Web Services

·    Test driven examples (probably building a full app from tests)