Your SlideShare is downloading. ×
  • Like

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
769
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
4
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Ruby on Rails A Brief Glimpse Presented by Gregg Pollack www.PatchedSoftware.com
  • 2. The Disclaimer I am not an Expert I am a bad programmer
  • 3. Ruby on Rails?
    • Ruby – A Programming Language
      • Created in 1993 by Yukihiro “Matz” Matsumoto
    Java Perl C# PHP Ozone PRADO Cocoon PEAR Mason Fusebox Struts Spring Framework WebObjects Hibernate Tapestry ASP.NET MonoRail Mavrick.NET NWAF Atlas Catalyst Catalyst PageKit Maypole
    • Ruby On Rails – A Web Framework
      • Created in 2004 by David Heinemeier Hansson
  • 4. The Ruby Language
    • “ Take a true object-oriented language, such as Smalltalk. Drop the unfamiliar syntax and move to more conventional, file-based source code. Now add in a good measure of the flexibility and convenience of languages such as Python and Perl.
    • -Dave Thomas
    • You end up with Ruby.” Programming Ruby
    • Principle of Least Surprise (POLS)
    • Everything is an Object
    Simple Transparent
    • Simplistic straightforward syntax
  • 5. Everything you could want
    • Exception handling like Java
    • Inheritance
    • Blocks
    • Garbage Collection
    • No Variable Declarations
    • OS Independent Threading
    • Highly portable
  • 6. Coderspeak
    • “Ruby allows you to express your ideas through a computer”
        • – Why the lucky stiff
    3.Times { print “Ho!” } exit unless “restaurant”.include? “aura” ['toast', 'cheese', 'wine'].each { |food| print food.capitalize }
  • 7. Ruby Gems
    • Problem:
        • You have to keep detailed driver version records
    Ruby Gems
    • Solution:
        • Package Version & Dependency Management
        • Package Delivery
        • Package Documentation Management
            • gem install rails –include dependencies
    Application Database Interface Mailer Web Services Logger
  • 8. Ruby On Rails Concepts
    • Convention Over Configuration
    • Less Software
    • DRY – Don’t repeat yourself
    NO XML!
  • 9. Rails Features
    • Automated DB Model Mapping
    • Web Services
    • Generators
    • AJAX Support
    • Full Stack MVC Framework
  • 10. What is MVC?
    • M odel – Business logic
      • Manages interaction
    V iew – Display logic C ontroller – User Action logic Posts Comments
  • 11. An MVC Example
    • Request: I want to edit Blog Post #3
    http://www.My.com/Blog/Edit?id=3
    • Web server receives request and calls the appropriate Controller
        • - Controller called “Blog”
    2. The Controller figures out what code should run
        • - Function called “Edit”
    3. The Action retrieves data from the Model
        • - Model named “Post” – id = 3
    4. The Action sends the data to the appropriate View 5. The View combines the data with html 6. The webpage is sent back to your browser
        • - Function Action called “Edit”
    Browser Request Controller Action Model View Browser Response
  • 12. The Anatomy of Rails http://www.My.com/Blog/Edit?id=3 Name of the Controller Class Name of the Action blog_controller.rb http://www.My.com/Blog/Edit/3
  • 13. Time to Hack!
  • 14. Web Servers & Databases
    • Ruby on Rails Servers
    • Databases
      • Any CGI Server
      • Fast CGI
      • Apache
      • Lighttpd (lighty)
      • Mysql
      • PostgresSQL
      • SQLite
      • SQL Server
      • DB2
      • Oracle
  • 15. Why ruby on rails growing so fast?
    • Increases Productivity
    • High signal to noise ratio
    • Encourages Good Habits
    • Zero ramp up time
    • Ruby
    • It’s FUN!
  • 16. Ruby on Rails Resources
    • For Videos: www.RubyOnRails.com/screencasts
    • To Learn: www.RubyOnRails.com/docs
    • To Talk:
    • Orlando Ruby Users Group
    • www.ORUG.org
    • Oh! Rug!
    “ Ruby on Rails is astounding. Using it is like watching a kung-fu movie, where a dozen bad-ass frameworks prepare to beat up the little newcomer only to be handed their asses in a variety of imaginative ways.” - Nathan Torkington, O'Reilly Program Chair for OSCON