Ruby. Pradžia

382 views
289 views

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
382
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

×