1 / 10

Basic Ruby Syntax

Basic Ruby Syntax. sum = 0 i = 1 while i &lt;= 10 do sum += i*I i = i + 1 end puts &quot;Sum of squares is #{sum}<br>&quot;. Newline is statement separator. do ... end instead of { ... }. Optional parentheses in method invocation. Variable Names. foo Local variable $foo Global variable

jbrowne
Download Presentation

Basic Ruby Syntax

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. Basic Ruby Syntax sum = 0 i = 1 while i <= 10 do sum += i*I i = i + 1 end puts "Sum of squares is #{sum}\n" Newline is statement separator do ... end instead of { ... } Optional parentheses in method invocation CS 142 Lecture Notes: Ruby

  2. Variable Names foo Local variable $foo Global variable @foo Instance variable in object @@foo Class variable MAX_USERS Constant (by convention) CS 142 Lecture Notes: Ruby

  3. Iterators and Blocks Method on Array object [1, 2, 3, 4].each do |x| print x + "\n" end Block: code passed to method CS 142 Lecture Notes: Ruby

  4. Yield def oddNumbers(count) number = 1 while count > 0 do yield(number) number += 2 count -= 1 end end oddNumbers(5) do |i| print(i, "\n") end Invoke method’s block CS 142 Lecture Notes: Ruby

  5. Factorial def fac(x) if x <= 0 then return 1 end return x*fac(x-1) end CS 142 Lecture Notes: Ruby

  6. Arguments: Defaults, Variable # def inc(value, amount=1) value+amount end def max(first, *rest) max = first rest.each do |x| if (x > max) then max = x end end return max end CS 142 Lecture Notes: Ruby

  7. Keyword Arguments def create_widget(size, properties) ... end create_widget(6, {:name => "Alice", :age => 31}) create_widget(6, :name => "Alice", :age => 31) CS 142 Lecture Notes: Ruby

  8. Simple Class class Point def initialize(x, y) @x = x @y = y end def x @x end def x=(value) @x = value end end p = Point.new(3,4) puts "p.x is #{p.x}\n" p.x = 44; CS 142 Lecture Notes: Ruby

  9. Module Example New methods available in MyClass: min, max, sort, map, select, ... class MyClass include Enumerable ... def each ... end end CS 142 Lecture Notes: Ruby

  10. CS 142 Lecture Notes: Ruby

More Related