Getting started with ruby
Download
1 / 21

Getting Started with Ruby - PowerPoint PPT Presentation


  • 104 Views
  • Uploaded on

Getting Started with Ruby. What’s Ruby?. Ruby is an OO, dynamic, agile language Everything’s an object For example, try puts -1.abs Derives strengths of Perl, Smalltalk, Python Created by Matz in mid 90’s Prevalent in Japan; recent buzz in the US It’s a lightweight language

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Getting Started with Ruby' - tegan


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

What s ruby
What’s Ruby?

  • Ruby is an OO, dynamic, agile language

    • Everything’s an object

      • For example, try puts -1.abs

    • Derives strengths of Perl, Smalltalk, Python

  • Created by Matz in mid 90’s

  • Prevalent in Japan; recent buzz in the US

  • It’s a lightweight language

    • Clean, Higher signal-to-noise ratio

  • There is no compiler to stand in your way

  • Quite flexible–you’ll see when you use it


History
History

  • Created by Yukihiro Matsumoto (Matz) in 1993

  • Slowly being accepted in the west

  • Popularized by some key players in the industry

  • Gaining strength in various applications

    • Ruby-On-Rails (ROR)


Downloading ruby
Downloading Ruby

  • Ruby site

    • http://www.ruby-lang.org

  • For windows, you may use one-click installer http://rubyinstaller.rubyforge.org


Ruby version
Ruby Version

  • You can find the version of ruby you’re using by typing ruby –v


Running ruby
Running Ruby

  • Run ruby and type commands

  • Interactively using irb

  • Save code to file and run it

  • I’ll run it directly from notepad2

  • Other tools and Plugins available as well


Getting started with ruby
IDEs

  • Comes with FreeRIDE IDE

  • Mondrian IDE

  • TextPad generally used on Mac

  • Command line and Notepad(2) works great as well!

    • The following blog entry shows you how

    • http://tinyurl.com/as8z7


Documentation
Documentation…

  • ri

  • RDoc at http://www.ruby-doc.org


Object oriented
Object-Oriented

  • Ruby treats almost everything as objects

  • nil is an object (try: puts nil.methods)

  • Even classes are objects!

    • You use them like objects

    • These objects simply represent their class

Pizza is a const that

references Pizza class object


Less clutter
Less Clutter

  • Code less, do more

  • Java:

  • Ruby

GOJ


Less clutter1
Less Clutter

  • Clean language

  • Less noise

  • ; is not needed

  • Parenthesis are optional

  • Variables don’t have type specification

  • Last statement of a method returns automatically

  • You can even return multiple values!


Variables
Variables

  • Dynamic typing

  • Output:


Types
Types

  • Everything is an object



Another function
Another function

Returns an array

Assigns elements of

array to individual variables


Ruby conventions
Ruby Conventions

  • Conventions are very important

  • Sometimes convention simply makes code look better

  • At other times, it means something significant [you will learn some conventions the hard way ]


Class method conventions
Class/Method conventions

  • Class names, modules names, and constants start with upper case

    • SportsCar, ValueOfPI, DAYS_IN_WEEK

  • Methods and variables start with lowercase and use underscore

    • start_engine(), miles_driven

  • Instance variables have @

    • @fuel_level

  • Class variables use double ats

    • @@suggested_pressure

  • Global variables use $

    • $ozone


Method convention talks to you
Method convention talks to you

  • You can figure out what a method is up to from its looks

  • Methods may end with an =

    • the method may appear as l-value

Query method

Doesn’t modify object

Has side effect;

mutates object


Global and predefined variables
Global and Predefined Variables

  • This is hideous

  • You may be setting some global variable and not know it (familiarize yourself)

  • Some predefs: $_, $0, $$, $&, $!, …


Vs double vs single quotes
"" vs '' (Double vs. Single Quotes)

  • '' is a simple string

  • Expressions within "" are evaluated

  • Better to use ' if you don’t have expressions