Skip to main Content

Ruby Programming & Ruby on Rails

  • Código del Curso RUBYPR
  • Duración 5 días

Otros Métodos de Impartición

Aprendizaje Virtual Precio

Por favor contáctenos

Solicitar Formación Grupal Inscribirse

Método de Impartición

Este curso está disponible en los siguientes formatos:

  • Clase de calendario

    Aprendizaje tradicional en el aula

  • Aprendizaje Virtual

    Aprendizaje virtual

Solicitar este curso en un formato de entrega diferente.

Ruby Programming & Ruby on Rails Course Overview

English - Please note this course is only available in English.
Español - Por favor, tenga en cuenta que esta formación solo está disponible en inglés.

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

Curso Remoto (Abierto)

Nuestra solución de formación remota o virtual, combina tecnologías de alta calidad y la experiencia de nuestros formadores, contenidos, ejercicios e interacción entre compañeros que estén atendiendo la formación, para garantizar una sesión formativa superior, independiente de la ubicación de los alumnos.

Calendario

Parte superior

Dirigido a

Parte superior
Who will the Course Benefit?

Developers who are required to write,maintain and test Ruby applications and projects based on Ruby on Rails.

Objetivos del Curso

Parte superior
Course Objectives

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

Ruby Programming & Ruby on Rails Training Course 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
Course Contents - DAY 4

Session 13: REST

  • What is REST
  • RESTful architecture
  • A simple REST client

Session 14: INTRODUCTION TO RUBY ON RAILS

  • Install Ruby on Rails on an operating system
  • The Model-View-Controller approach
  • Rails Conventions
  • Rails project structure
  • Using RubyGems with Rails

Session 15: ROUTING

  • What is a Route
  • Define routes that recognize incoming URLs
  • Use named route methods to generate URLs based on the routing scheme
  • Apply and understand the RESTful routing conventions
  • Design apps to take advantage of the REST conventions in Rails

Session 16: MODELS

  • What is a Model
  • Using ActiveRecord
  • Validations
  • Associations
  • Migrations
Course Contents - DAY 5

Session 17: CONTROLLERS

  • What is a Controller
  • Creating controllers
  • Using ActionController
  • Writing Actions
  • Filters

Session 18: VIEWS

  • What is a View
  • Exploring ActionView
  • Writing Views for actions
  • Partials
  • Forms

Session 19: CREATING A RAILS PROJECT

  • Creating the project
  • Project Directory structure
  • Using the Rails web server
  • Creating the initial controller
  • Modify the initial index.html file
  • Setting the Route
  • Creating a resource
  • Viewing routes with rake

Session 20: RAILS SCAFFOLDING

  • What is Scaffolding
  • Creating a new project
  • Generating the Rail Scaffold
  • Customising the application

Pre-requisitos

Parte superior
Requirements

Delegates attending this course should have some previous programming experience and be able to define general programming concepts including: compilation,execution,variables,arrays,sequence,selection,iteration,functions,objects,and classes. Moreover delegates should be able to navigate the filesystem (on the command line ideally),edit and save text files and browse the web. This knowledge can be obtained by attendance on the pre-requisite Introduction to Programming course.

Siguientes Cursos Recomendados

Parte superior
Further Learning
  • Apache Web Server
  • Introduction to MySQL
  • Python Programming 1
  • PHP Developer