Ruby on rails web application development is becoming the popular choice for web applications development. It is popularly known as the "Language of the Cloud". Not only this Ruby on Rails also supports Agile Development.
2. • Get familiarized with Ruby on Rails
– Advantages of RoR
– Industry leaders who are using RoR
• The Perfect Ruby on Rails Ecosystem
2People10 Technosoft Private Limited | 2013.01
Contents
3. 3
Introduction to Ruby on Rails
Ruby on Rails is an open-source
web framework that is optimized
for programmer happiness and
sustainable productivity. It lets
you write beautiful code by
favoring convention over
configuration.
People10 Technosoft Private Limited | 2013.01
Ruby on Rails is a breakthrough in
lowering the barriers of entry to
programming. Powerful web
applications that formerly might
have taken weeks or months to
develop can be produced in a matter
of days.
-Tim O'Reilly, Founder of O'Reilly Media
6. 6
Simpler Approach
People10 Technosoft Private Limited | 2013.01
Ruby on Rails solves the
common architectural
problems that existed in
traditional application
development, like:
» Persistence
» Logging
» Build scripts
» Application
configuration
» Web tier components
» Workflow
7. 7
Convention over configuration
People10 Technosoft Private Limited | 2013.01
» Ruby on Rails favors
convention over
configuration
» A developer only needs to
specify unconventional aspects
of the application
» No need for one large
configuration file
» Less time will be spent on
defining obvious things which in
turn will increase productivity
8. 8
Do not Repeat Yourself (DRY)
People10 Technosoft Private Limited | 2013.01
» DRY is a design principle
which is used in Ruby on
Rails to reduce the repetition
of information of all kinds
» DRY code is created by data
transformation and code
generators
» DRY code usually makes
large applications easier to
maintain
9. 9
Active Record Pattern
People10 Technosoft Private Limited | 2013.01
» Active Records provides an
interface and binding
between the tables in a
relational database and the
Ruby program code that
manipulates database
records
» Allows simple designs and
straightforward mappings
between database tables and
application objects.
10. 10
Model View Controller
People10 Technosoft Private Limited | 2013.01
» Ruby on Rails follows the
Model View Controller
(MVC) architecture
» Helps in addressing the
issues of code reusability and
separation of concerns
» With the help of Ajax,
Backbone etc. MVC can be
executed partly on the client
11. 11
Dynamic nature
People10 Technosoft Private Limited | 2013.01
» Ruby on Rails simplifies
the client code behavior
» Generation of dynamic
content – web pages,
emails, xml documents
etc. is easy
» Can inject independent
code into classes, blocks
and closures
12. 12
Database Persistence
People10 Technosoft Private Limited | 2013.01
» The model of Ruby on
Rails is seamlessly
persisted to the
database
» Implementation of
database migrations for
applying and rolling back
database changes is
seamless
13. 13
Behavior Driven Development
People10 Technosoft Private Limited | 2013.01
» RSpec, a Behavior
Driven Framework for
Ruby
» Testing is more about
writing specifications of
the behavior of the
program
» Software components can
easily be tested without
resorting to external tools
or generators
14. 14
Supports Agile
People10 Technosoft Private Limited | 2013.01
» Jenkins CI, for continuous
integration
» Cucumber for test driven
development
» Capistrano for deploys
» Collaboration tools like
Jira, and Pivotal tracker
» Supports Total agile
development
15. 15
Cloud Ready
People10 Technosoft Private Limited | 2013.01
» Ruby has already been
named as the “Language
of the Cloud”
» Companies like Heroku,
Engine Yard and
Morphlabs are utilizing
Ruby at its fullest to glue
their cloud platform
16. 16People10 Technosoft Private Limited | 2013.01
Product Engineering
& Collaboration
Source control
Backlog management
IDE
Web server Databases
User Experience
Framework
Key value store
MVP
The Perfect ROR Ecosystem