Development with Ruby and Rails Course

Course Code: IN 752
Course Abstract:

This course provides participants with an introduction to and coverage of the Ruby programming language and Rails support framework. It begins with a heavy dose of Ruby programming concepts, covering a gamut of language topics such as Ruby operators, control structures, data structures, and working with methods. The course veers into object-oriented topics such as classes, encapsulation, and inheritance, creating and working with modules, reflection, error handling, working with files, and more. The course then spends approximately two days on the web-focused Rails support framework, called Rails. Rails provides the glue necessary for building middle-tier apps including well-structured web architectures that follow the model-view-controller (MVC) pattern. This course examines all aspects of the Rails framework (from beginning to advanced topics) including how to use Rails scaffolding, using code migrations and integrating with a database, and an in-depth look at ActiveRecord, the portion of Rails which serves as an object-relational mapping (ORM) solution. The course concludes with several remaining topics, such as integrating AJAX and JavaScript into solutions, working with XML, and deploying applications.

Audience:

This course is intended for developers seeking beginning to intermediate level Ruby and Rails topics. It assumes that attendees already have a programming background. Topics such as constructors, inheritance, and encapsulation, should already have meaning, and this course will focus on how each applies to Ruby and Rails.

Duration: 3 days
Learning Outcomes:

Upon completion of this course, participants should be able to:

> Configure servers and deploy apps into servers hosting Ruby Applications

> Develop Ruby and Rails-based applications

> Use ActiveRecord, integrate apps with a database

> Write clean, semantic web applications using proper HTML, CSS, and JavaScript via Rails templates

> Create applications that utilize XML

> Incorporate AJAX into web-based apps

> Test applications using the built-in Rails support for it

Course Topics:

Day 1

Introducing Ruby for Developers

Why Ruby?

Installing Ruby

Development Tools for Ruby

Servers for Deployment

Writing, Executing, and Debugging Scripts

Ruby Operators and Control Structures

Arrays and Strings

Symbols

Methods

Procs and Yields

 

Object Oriented Ruby

Instantiating Objects

Variable types

Constructors

Inheritance

Using Require

Defining Modules

The Kernel Module

Reflection

Exception Handling

 

Day 2

Rails Application Development

What is Rails?

Why Use it?

Installing InstantRails

Using the Console

Overview of Building an Application

Create the Application Framework

Rails and MVC

Creating the Controller and Actions

Creating the Scaffolding

Migrating code to the Database

Testing the App

Handling Multiple Views

Creating a CRUD-based Rails Application

 

Working with Active Record

ActiveRecord

Rules of ActiveRecord

More with Migrations

Using Active Record without Rails

ActiveRecord Finders and Associations

Mapping Associations with Rails

One-to-One, One-to-Many, Many-to-Many Relationships

Generating and Updating the Model

Data Validation

 

Day 3

Deeper into Rails

RubyGems

Embedded Ruby

Managing Layouts

Using Form Helpers

Processing Errors

Incorporating Partials

Working with Filters

 

XML, AJAX, and More

Working with XML

AJAX in Rails Apps

Using RJS (Ruby JavaScript)

Rails, Prototype, and Scriptaculous

Practical Solutions with Rails

 

Testing and Deployment Strategies

Using the Unit Test Harness

Creating Fixtures

Testing Controllers and Model Components

Server Installations and Application Deployments

Development Automation

Prerequisites:

Experience with an object-oriented programming language, such as C++ or Java, or strong knowledge of OO concepts.

Note: All fields are required
At the present time we do not offer training for individuals or groups less then 6 individuals. We apologize for any inconvenience.


We Value Your Privacy!

Ready to get started or in need of more information? Contact us today.

Go To Blog Virtual Learning