1 / 21

Getting Started with Ruby

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

tegan
Download Presentation

Getting Started with Ruby

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Getting Started with Ruby

  2. 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

  3. 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)

  4. Downloading Ruby • Ruby site • http://www.ruby-lang.org • For windows, you may use one-click installer http://rubyinstaller.rubyforge.org

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

  6. 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

  7. 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

  8. Documentation… • ri • RDoc at http://www.ruby-doc.org

  9. 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

  10. Less Clutter • Code less, do more • Java: • Ruby GOJ

  11. 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!

  12. Variables • Dynamic typing • Output:

  13. Types • Everything is an object

  14. Writing a function

  15. Another function Returns an array Assigns elements of array to individual variables

  16. 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 ]

  17. 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

  18. 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

  19. Global and Predefined Variables • This is hideous • You may be setting some global variable and not know it (familiarize yourself) • Some predefs: $_, $0, $$, $&, $!, …

  20. "" vs '' (Double vs. Single Quotes) • '' is a simple string • Expressions within "" are evaluated • Better to use ' if you don’t have expressions

  21. More on Strings

More Related