0
y. Pradžia
Rub
013-11-30
ošis @ VilniusRB, 2
Vidmantas Kab
žių pradžia
Prad

1995
žių pradžia
Prad

1995
© Kada, jei ne dabar
Visur
ir Lietuvoje
Visur -
ctivity & fun
mogui: produ
Ž
“vilniusrb”.length
ctivity & fun
mogui: produ
Ž
“vilniusrb”.length
[ 1, 2, 3 ].include?(2)
ctivity & fun
mogui: produ
Ž
“vilniusrb”.length
[ 1, 2, 3 ].include?(2)
print “YOLO” if 1 > 2
ctivity & fun
mogui: produ
Ž
“vilniusrb”.length
[ 1, 2, 3 ].include?(2)
print “YOLO” if 1 > 2
10.times do
puts “99 bottles...
Katės
Objektai

Pradžioje visko, buvo

objektas
sukūrimas
Objektų

Tam, kad pagamintume ką nors, reikia

instrukcijos
Klasės

Tam, kad pagamintume ką nors, reikia

klasės
Klasė
Objektai
ės aprašymas
Klas
class Pavadinimas
# metodai
end
ės aprašymas
Klas
class House
def number_of_floors
puts “2”
end
end
sukūrimas
Objekto
home = House.new
home.number_of_floors
sukūrimas
Objekto
home = House.new
home.number_of_floors
#=> “2”
iai objektai
Standartin
42
3.14
“VilniusRB”
[1, 2, 3]
{ “pi” => 3.14,
“e” => 2.71 }

#
#
#
#

Integer
Float
String
Array

...
iai objektai
Standartin
[“langai”, “durys”, “sienos”].size

#=> 3
[“langai”, “durys”,
“sienos”].include?(“balkonas”)

#=> ...
ymo tvarka
Vykd
if condition
# kodas
else
# kitas kodas
end
Sąlyga
NEVYKDOMA, jei sąlyga grąžina:
false
nil
Sąlyga
NEVYKDOMA, jei sąlyga grąžina:
false
nil
VYKDOMA:
visa kita :-)
true, tekstas, skaičius,
sąrašas, ...
Pavyzdys
class Recipe
def contains?(ingredient)
if [“miltai”, “cukrus”].include?(ingredient)
puts “Šis ingredientas yra!”
...
o metodas
Sukūrim
class Recipe
def initialize(ingredients)
@ingredients = ingredients
end
end
r = Recipe.new([“miltai”, “r...
kintamasis
Objekto
class Recipe
def initialize(ingredients)
@ingredients = ingredients
end
def contains?(ingredient)
if @i...
kintamasis
Objekto
r = Recipe.new([“miltai”, “razinkos”])
r.contains?(“razinkos”)
#=> “YAY!”
r = Recipe.new([“cukrus”, “ba...
Užduotis
Parašyti klasę, kurios objektas mokėtų
sukūrimo metu atsiminti perduotą sąrašą ir
pasakyti, ar konkreti dalis yra...
irmūnams :-)
ma užduotis p
Papildo
Papildykite klasę nauju metodu, kuris
pagal perduotą aukštų skaičių, grąžiną
pastato au...
gem
Ruby klasės
Savo klasės
Kitų klasės: gem
anaudojimas
P
$ gem install credit_card_validator
anaudojimas
P
require “credit_card_validator”
number = '1111 2222 3333 4444'
CreditCardValidator::Validator
.valid?(number...
end
@vidmantas
+vidmantaskabosis
vidmantas@kabosis.lt
Upcoming SlideShare
Loading in...5
×

Ruby. Pradžia

213

Published on

Ruby pradžiamokslio paskaitos skaidrės
VilniusRB 2013-11-30

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
213
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Ruby. Pradžia"

  1. 1. y. Pradžia Rub 013-11-30 ošis @ VilniusRB, 2 Vidmantas Kab
  2. 2. žių pradžia Prad 1995
  3. 3. žių pradžia Prad 1995 © Kada, jei ne dabar
  4. 4. Visur
  5. 5. ir Lietuvoje Visur -
  6. 6. ctivity & fun mogui: produ Ž “vilniusrb”.length
  7. 7. ctivity & fun mogui: produ Ž “vilniusrb”.length [ 1, 2, 3 ].include?(2)
  8. 8. ctivity & fun mogui: produ Ž “vilniusrb”.length [ 1, 2, 3 ].include?(2) print “YOLO” if 1 > 2
  9. 9. ctivity & fun mogui: produ Ž “vilniusrb”.length [ 1, 2, 3 ].include?(2) print “YOLO” if 1 > 2 10.times do puts “99 bottles…” end
  10. 10. Katės
  11. 11. Objektai Pradžioje visko, buvo objektas
  12. 12. sukūrimas Objektų Tam, kad pagamintume ką nors, reikia instrukcijos
  13. 13. Klasės Tam, kad pagamintume ką nors, reikia klasės
  14. 14. Klasė
  15. 15. Objektai
  16. 16. ės aprašymas Klas class Pavadinimas # metodai end
  17. 17. ės aprašymas Klas class House def number_of_floors puts “2” end end
  18. 18. sukūrimas Objekto home = House.new home.number_of_floors
  19. 19. sukūrimas Objekto home = House.new home.number_of_floors #=> “2”
  20. 20. iai objektai Standartin 42 3.14 “VilniusRB” [1, 2, 3] { “pi” => 3.14, “e” => 2.71 } # # # # Integer Float String Array # Hash
  21. 21. iai objektai Standartin [“langai”, “durys”, “sienos”].size #=> 3 [“langai”, “durys”, “sienos”].include?(“balkonas”) #=> false 4 * 2 #=> 8
  22. 22. ymo tvarka Vykd if condition # kodas else # kitas kodas end
  23. 23. Sąlyga NEVYKDOMA, jei sąlyga grąžina: false nil
  24. 24. Sąlyga NEVYKDOMA, jei sąlyga grąžina: false nil VYKDOMA: visa kita :-) true, tekstas, skaičius, sąrašas, ...
  25. 25. Pavyzdys class Recipe def contains?(ingredient) if [“miltai”, “cukrus”].include?(ingredient) puts “Šis ingredientas yra!” else puts “Teks nusipirkti” end end end r = Recipe.new r.contains?(“razinkos”) #=> “Teks nusipirkti”
  26. 26. o metodas Sukūrim class Recipe def initialize(ingredients) @ingredients = ingredients end end r = Recipe.new([“miltai”, “razinkos”])
  27. 27. kintamasis Objekto class Recipe def initialize(ingredients) @ingredients = ingredients end def contains?(ingredient) if @ingredients.include?(ingredient) puts “YAY!” end end end
  28. 28. kintamasis Objekto r = Recipe.new([“miltai”, “razinkos”]) r.contains?(“razinkos”) #=> “YAY!” r = Recipe.new([“cukrus”, “bananai”]) r.contains?(“razinkos”) #=> nil
  29. 29. Užduotis Parašyti klasę, kurios objektas mokėtų sukūrimo metu atsiminti perduotą sąrašą ir pasakyti, ar konkreti dalis yra tame sąraše. Pavyzdžiui: home = House.new([“sienos”, “laiptai”]) home.has?(“langai”) #=> “Ne” home.has?(“sienos”) #=> “Taip”
  30. 30. irmūnams :-) ma užduotis p Papildo Papildykite klasę nauju metodu, kuris pagal perduotą aukštų skaičių, grąžiną pastato aukštį (sakykim, kad vienas aukštas = 3.1 m) Pavyzdžiui: home.height(2) #=> 6.2 home.height(5) #=> 15.5
  31. 31. gem Ruby klasės Savo klasės Kitų klasės: gem
  32. 32. anaudojimas P $ gem install credit_card_validator
  33. 33. anaudojimas P require “credit_card_validator” number = '1111 2222 3333 4444' CreditCardValidator::Validator .valid?(number) #=> false
  34. 34. end @vidmantas +vidmantaskabosis vidmantas@kabosis.lt
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×