RUBY ON RAILS
MITHUN SASIDHARAN
Web Evangelist & Foss Enthusiast
CONTENTS
 INTRODUCTION
 WHAT IS RUBY?
 JAvA vS RUBY
 WHAT IS RAILS?
 RUBY ON RAILS
 CONCLUSION
INTRODUCTION
 Ruby on Rails, sometimes known as "RoR" or just Rails, is an open source
framework for Web development in R...
NOW, WHAT’S A WEB AppLICATION ??

A web application is an application that is accessed via web browser over
a network suc...
WHAT’S RUBY ?
 Ruby is a dynamic, reflective, general purpose object-oriented
programming language that combines syntax i...
FEATURES OF RUBY !!
 Objects everywhere! - In Ruby everything is an object including simple
numeric values. Here is an ex...
 In Ruby everything is open! - In Ruby you can easily extend classes
and modules. This means that nothing in Ruby (includ...
SIMPLE RUBY PROGRAM TO ADD TWO
NUMBERS
# define a function called addtwo with two parameters
def addtwo(a, b)
a + b; # ret...
JAvA vS RUBY !!
•Ruby is interpreted, Java is compiled (before being interpreted)
>ruby my_program.rb

• Code can be loade...
RUBY USE DYNAMIc TYPING
• Values have type, variables not
• Decrease language complexity
- No type declaration
- No type c...
RUBY SYNTAx IS TERSE
RUBY SUPPORTS cONcEPT Of
BLOckS
JAvA WIN ON PERfORMANcE fIELD
ON A BUSINESS POINT Of vIEW ! !
• Java is a well-known technology
• Lots of developments have been made with it
• Easy to ...
YET, RUBY PICKING UP MOMENTUM !!
WHAT IS RAILS ??
Rails is a web-application framework that includes everything needed to
create database-backed web appli...
WHAT IS A WEB FRAMEWORK ??
 A web application framework is a software framework that is
designed to support the developme...
MVC ARCHITECTURE
Model–view–controller (MVC) is an architectural pattern used in
software engineering. The pattern isolat...
MODEL- Used for persistence and relationships.

VIEW- Used for displaying the data.

CONTROLLER- The logic of the appli...
FEATURES OF RUBY ON RAILS
Ruby on Rails is separated into various packages, namely ActiveRecord(an
object-relational mapp...
RAILS VS C#/.NET
RAILS VS J2EE
Both have a learning curve.

RAILS has the edge in productivity by a significant margin.

J2EE currently ...
OR AnOthER wAy tO put It ……
AppLICAtIOnS OF ROR !!
Ruby On Rails have been in use now by over 500 websites.

Some of the leading websites using
yell...
COnCLuSIOn
RoR an evolving Toolset.

Ruby is what makes Rails special, the interest in general Ruby
programming will con...
REFEREnCE
www.rubyonrails.org

www.wikipedia.org

www.37signals.com

The Rails Way- OBIE FERNANDEZ

From Java To Ruby...
thAnK yOu !!
Upcoming SlideShare
Loading in...5
×

Introduction to Ruby on Rails

265

Published on

The presentation gives an overview about the ruby programming language and Rails, the web framework built over it ruby. It does highlight some of the key features of ruby programming language and mentions the key benefits of using Rails framework for web application development.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
265
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introduction to Ruby on Rails

  1. 1. RUBY ON RAILS MITHUN SASIDHARAN Web Evangelist & Foss Enthusiast
  2. 2. CONTENTS  INTRODUCTION  WHAT IS RUBY?  JAvA vS RUBY  WHAT IS RAILS?  RUBY ON RAILS  CONCLUSION
  3. 3. INTRODUCTION  Ruby on Rails, sometimes known as "RoR" or just Rails, is an open source framework for Web development in Ruby, an object-oriented programming (OOP) language similar to Perl and Python.  The principle difference between Ruby on Rails and other frameworks for development lies in the speed and ease of use that developers working within the environment enjoy.  Changes made to applications are immediately applied, avoiding the time consuming steps normally associated with the web development cycle.
  4. 4. NOW, WHAT’S A WEB AppLICATION ?? A web application is an application that is accessed via web browser over a network such as the Internet or an intranet. The web Application consists of a browser, an application and a database. The browser makes a request to the web application, which then interacts with the database, and produce suitable output and sends it back to the browser.
  5. 5. WHAT’S RUBY ?  Ruby is a dynamic, reflective, general purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features.  Ruby originated in Japan during the mid-1990s and was initially developed and designed by Yukihiro "Matz" Matsumoto. It is based on Perl, Smalltalk, Eiffel, Ada, and Lisp.  Ruby supports multiple programming paradigms, including functional, object oriented, imperative and reflective. It is similar in varying respects to Python, Perl, Lisp, Dylan, and CLU.
  6. 6. FEATURES OF RUBY !!  Objects everywhere! - In Ruby everything is an object including simple numeric values. Here is an example,  Blocks - Blocks is a powerful feature in Ruby which simplifies programming. Blocks are code blocks which can be passed as a parameter to a method. Using this feature it is easy to build code libraries which can delegate varying functionality to code blocks to be built later. Implicit return value in methods - Value of the last expression in a method becomes the return value of the method. In Ruby return keyword is optional.
  7. 7.  In Ruby everything is open! - In Ruby you can easily extend classes and modules. This means that nothing in Ruby (including built in classes and modules) are closed!. Interestingly additional methods can be added to a class even at runtime.  Ruby supports parallel assignment - It is possible to change multiple variables in a single assignment. The best example is the swapping of two variable.  In Ruby strings are mutable - In Ruby it is possible to change a string variable in place. Hence unlike Java, the same string literal when used multiple times will point to different object instances.  True and false in Ruby - In Ruby only nil and false evaluate to false. This means that everything else evaluates to true! Hence even the value 0 evaluate to true in ruby.
  8. 8. SIMPLE RUBY PROGRAM TO ADD TWO NUMBERS # define a function called addtwo with two parameters def addtwo(a, b) a + b; # return a + b end print "Please enter number 1 : "; # get the input from the console, val1 = gets; print "Please enter number 2 : "; val2 = gets; # convert the string console inputs to_i (to_integers) and add together print "Answer : " , (val1.to_i + val2.to_i), "n";
  9. 9. JAvA vS RUBY !! •Ruby is interpreted, Java is compiled (before being interpreted) >ruby my_program.rb • Code can be loaded at runtime • Code is easily accessible • Speed performance issues >javac MyProgram.java >java MyProgram
  10. 10. RUBY USE DYNAMIc TYPING • Values have type, variables not • Decrease language complexity - No type declaration - No type casting • Increase flexibility • Errors appears at run-time
  11. 11. RUBY SYNTAx IS TERSE
  12. 12. RUBY SUPPORTS cONcEPT Of BLOckS
  13. 13. JAvA WIN ON PERfORMANcE fIELD
  14. 14. ON A BUSINESS POINT Of vIEW ! ! • Java is a well-known technology • Lots of developments have been made with it • Easy to find experts • Still not that much available Ruby developers
  15. 15. YET, RUBY PICKING UP MOMENTUM !!
  16. 16. WHAT IS RAILS ?? Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-ViewControl pattern. Ruby on Rails was extracted by David Heinemeier Hansson from his work on Basecamp, a project management tool by 37signals (now a web application company). Like many contemporary web frameworks, Rails uses the Model-ViewController (MVC) architecture pattern to organize application programming.
  17. 17. WHAT IS A WEB FRAMEWORK ??  A web application framework is a software framework that is designed to support the development of dynamic websites, Web applications and Web services. The framework aims to alleviate the overhead associated with common activities performed in Web development.  For example, many frameworks provide libraries for database access, templating frameworks and session management, and often promote code reuse.  Some of the main features of web framework is that they provide security,database access and mapping,URL mapping,Web template system,caching,AJAX ,Automatic Configurations and so on.
  18. 18. MVC ARCHITECTURE Model–view–controller (MVC) is an architectural pattern used in software engineering. The pattern isolates business logic from input and presentation, permitting independent development, testing and maintenance of each. These frameworks use actions that do the required processing, and then "push" the data to the view layer to render the results. These frameworks start with the view layer, which can then "pull" results from multiple controllers as needed.
  19. 19. MODEL- Used for persistence and relationships. VIEW- Used for displaying the data. CONTROLLER- The logic of the application.
  20. 20. FEATURES OF RUBY ON RAILS Ruby on Rails is separated into various packages, namely ActiveRecord(an object-relational mapping system for database access), ActiveResource (provides web services), ActionPack , ActiveSupport and ActionMailer. Prior to version 2.0, Rails also included the Action Web Service package which is now replaced by Active Resource. Apart from standard packages, developers can make plugins to extend existing packages.
  21. 21. RAILS VS C#/.NET
  22. 22. RAILS VS J2EE Both have a learning curve. RAILS has the edge in productivity by a significant margin. J2EE currently has an edge in scalability. If it’s a client facing system for millions of concurrent users – use J2EE. If it’s an internal web application, definitely take a look at this technology as a possible way of shortcutting the long development time for a J2EE web application.
  23. 23. OR AnOthER wAy tO put It ……
  24. 24. AppLICAtIOnS OF ROR !! Ruby On Rails have been in use now by over 500 websites. Some of the leading websites using yellowpages.com, lumosity.com and so on. RoR are 43things.com, Ruby on Rails is Picking up the pace and have become more and more viable in the business scenario.
  25. 25. COnCLuSIOn RoR an evolving Toolset. Ruby is what makes Rails special, the interest in general Ruby programming will continue to expand rapidly RoR can be best used for small web based applications requring parallel development.
  26. 26. REFEREnCE www.rubyonrails.org www.wikipedia.org www.37signals.com The Rails Way- OBIE FERNANDEZ From Java To Ruby – BRUCE TATE
  27. 27. thAnK yOu !!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×