Slide 1

Slide 1 text

seja feliz com ruby

Slide 2

Slide 2 text

lucas renan

Slide 3

Slide 3 text

nu

Slide 4

Slide 4 text

guru sorocaba

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

sad panda

Slide 8

Slide 8 text

yukihiro matsumoto

Slide 9

Slide 9 text

perl, smalltalk, eiffel, ada, lisp

Slide 10

Slide 10 text

ruby permite que você seja feliz

Slide 11

Slide 11 text

uhull, valeu matz :)

Slide 12

Slide 12 text

5.times { puts "We love Ruby" }

Slide 13

Slide 13 text

puramente orientada a objetos

Slide 14

Slide 14 text

1.class # => Fixnum

Slide 15

Slide 15 text

1.class # => Fixnum "ruby".class # => String

Slide 16

Slide 16 text

1.class # => Fixnum "ruby".class # => String 1.to_s.class # => String

Slide 17

Slide 17 text

ruby permite que você escreva código elegante

Slide 18

Slide 18 text

class Person end person = Person.new

Slide 19

Slide 19 text

class Person attr_accessor :name end person = Person.new person.name = "lucas"

Slide 20

Slide 20 text

class Person attr_accessor :name, :age end person = Person.new person.name = "lucas" person.age = 24 puts person.age # => 24

Slide 21

Slide 21 text

class Person attr_accessor :name, :age def is_adult? @age > 18 end end person = Person.new person.name = "lucas" person.age = 24 puts person.is_adult? # => true

Slide 22

Slide 22 text

active support

Slide 23

Slide 23 text

require "active_support/all" 1.day.ago # => 2013-08-09 00:00:00 -0300

Slide 24

Slide 24 text

require "active_support/all" 1.day.ago # => 2013-08-09 00:00:00 -0300 Date.today.beginning_of_month # => Thu, 01 Aug 2013

Slide 25

Slide 25 text

require "active_support/all" 1.day.ago # => 2013-08-09 00:00:00 -0300 Date.today.beginning_of_month # => Thu, 01 Aug 2013 [1, 2, 3].sum # => 6

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

metaprogramming

Slide 28

Slide 28 text

klass = Class.new do end Person = klass Person.name # => Person

Slide 29

Slide 29 text

klass = Class.new do end Person = klass Person.name # => Person person = Person.new

Slide 30

Slide 30 text

klass = Class.new do ["say", "scream"].each do |method| define_method method do |message| "#{method}ing: #{message}" end end end Person = klass Person.name # => Person person = Person.new puts person.say "ruby" # => saying: ruby puts person.scream "ruby <3" # => screaming: ruby <3

Slide 31

Slide 31 text

instalação

Slide 32

Slide 32 text

No content

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

até quando você vai ficar triste?

Slide 35

Slide 35 text

obrigado :)