Slide 1

Slide 1 text

Rubis naikintuve F-18

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

1995

Slide 4

Slide 4 text

Ruby, I’m your father Matz

Slide 5

Slide 5 text

DOMAS BITVINSKAS domasbitvinskas.com @Nedomas

Slide 6

Slide 6 text

“Garso greitis yra 340.3 m/s” # => “Garso greitis yra 340.3 m/s” ! !

Slide 7

Slide 7 text

“Garso greitis yra 340 m/s” # => “Garso greitis yra 340 m/s” “Garso greitis yra 340 m/s”.upcase # => “GARSO GREITIS YRA 340 M/S”

Slide 8

Slide 8 text

mach_one = 340.3 ! ! !

Slide 9

Slide 9 text

mach_one = 340.3 mach_one/1000 * 3600 # => 1225.08 !

Slide 10

Slide 10 text

mach_one = 340.3 km_h = mach_one/1000 * 3600 # => 1225.08 !

Slide 11

Slide 11 text

mach_one = 340.3 km_h = mach_one/1000 * 3600 “Garso greitis yra #{km_h} km/h” # => “Garso greitis yra 1225.08 km/h”

Slide 12

Slide 12 text

“Garso greitis yra #{km_h} km/h” # => “Garso greitis yra 1225.08 km/h” “Garso greitis yra #{km_h} km/h” .upcase # => “GARSO GREITIS YRA 1225.08 KM/H” !

Slide 13

Slide 13 text

“Garso greitis yra #{km_h} km/h” # => “Garso greitis yra 1225.08 km/h” “Garso greitis yra #{km_h} km/h” .upcase # => “GARSO GREITIS YRA 1225.08 KM/H” “Garso greitis yra #{km_h} km/h” .reverse # => “h/mk 80.5221 ary sitierg osraG”

Slide 14

Slide 14 text

def secret(our_secret) puts “Menama mįslė…” puts our_secret.reverse end ! !

Slide 15

Slide 15 text

def secret(our_secret) puts “Menama mįslė…” puts our_secret.reverse end secret(“Garso greitis yra #{km_h} km/h”) # => Menama mįslė… # => h/mk 80.5221 ary sitierg osraG

Slide 16

Slide 16 text

Objektas Klasė

Slide 17

Slide 17 text

Objektas Klasė Integer Float String Lėktuvas 340 340.3 “Greitis” F18

Slide 18

Slide 18 text

class Plane def start puts “Jonai, pasuk raktelį” end end ! ! ! ! ! !

Slide 19

Slide 19 text

class Plane def start puts “Jonai, pasuk raktelį” end end ! f18 = Plane.new f18.start ! ! !

Slide 20

Slide 20 text

class Plane def start puts “Jonai, pasuk raktelį” end end ! f18 = Plane.new f18.start # => “Jonai, pasuk raktelį” ! !

Slide 21

Slide 21 text

class Plane … def start … def crash(bad_part) puts “Sprogo #{bad_part}” end end ! ! ! ! !

Slide 22

Slide 22 text

class Plane … def start … def crash(bad_part) puts “Sprogo #{bad_part}” end end ! f18 = Plane.new f18.start # => “Jonai, pasuk raktelį” f18.crash(“sparnas”) # => “Sprogo sparnas”

Slide 23

Slide 23 text

class Plane … def start … def crash(bad_part) puts “Sprogo #{bad_part}” end end ! f18 = Plane.new f18.start # => “Jonai, pasuk raktelį” f18.crash(“pilotas”) # => “Sprogo pilotas”

Slide 24

Slide 24 text

parts = [“sparnas”, “variklis”, “ginklai”] ! ! !

Slide 25

Slide 25 text

parts = [“sparnas”, “variklis”, “ginklai”] parts.size # => 3 !

Slide 26

Slide 26 text

parts = [“sparnas”, “variklis”, “ginklai”] parts.first # => “sparnas” !

Slide 27

Slide 27 text

parts = [“sparnas”, “variklis”, “ginklai”] parts.include?(“variklis”) # => true parts.include?(“pilotas”) # => false

Slide 28

Slide 28 text

if 5 > 4 puts “Dėsniai vis dar galioja” else puts “Nieko gero” end true false

Slide 29

Slide 29 text

if 5 > 4 puts “Dėsniai vis dar galioja” else puts “Nieko gero” end # => “Dėsniai vis dar galioja” true false

Slide 30

Slide 30 text

class Plane def crash(bad_part) parts = [“sparnas”, “variklis”, “ginklai”] if parts.include?(bad_part) puts “Sprogo #{bad_part}” else puts “#{bad_part} nėra lėktuvo dalis” end end end f18 = Plane.new f18.crash(“sparnas”) # => “Sprogo sparnai” f18.crash(“pilotas”) # => “pilotas nėra lėktuvo dalis”

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

class Plane def initialize(plane_parts) @parts = plane_parts end def crash(bad_part) if @parts.include?(bad_part) puts “Sprogo #{bad_part}” else puts “#{bad_part} nėra lėktuvo dalis” end end end seaplane = Plane.new([“propeleris”, “slidės”]) seaplane.crash(“propeleris”) # => “Sprogo propeleris”

Slide 33

Slide 33 text

Objektas Klasė Integer Float String Array Plane 340 340.3 “Greitis” [“sparnas”] f18, seaplane

Slide 34

Slide 34 text

Užduotis

Slide 35

Slide 35 text

Užduotis Parašyti klasę, kurios objektas mokėtų sukūrimo metu atsiminti perduotus ingredientus bei pasakyti ar ingredientas yra recepte. ! Pavyzdžiui sausainiai = Recipe.new([“miltai”, “vanduo”]) sausainiai.in_recipe?(“vanduo”) #=> "Yra" sausainiai.in_recipe?(“kiaušiniai”) #=> "Nėra"

Slide 36

Slide 36 text

class Recipe def initialize(ingredients) @all_ingredients = ingredients end ! def in_recipe?(ingredient) if @all_ingredients.include?(ingredient) puts "Recepte YRA toks ingredientas: #{ingredient}" else puts "Recepte NĖRA tokio ingrediento: #{ingredient}" end end end