Studi Kasus,
ada sebuah tim agile yang memasang poin nol utk sprint hari senin di
minggu ini, yang bilamana dijadikan dalam hitungan waktu maka spec'ing,
koding, paling lama akan makan waktu 2 menit. intinya yang pingin
ditampilkan adalah semua value dalam array, kecuali value tertentu
(dalam hal ini string others).
Berikut ini adalah hasil spike si crawling baby:
<terminal>
r:belajar crawling_baby$ cat each_unless.rb
#!/usr/bin/env ruby -d -w
class MrongosArray < Array
def initialize(*ary)
@ary = ary
end
def each_unless(except)
tmp = @ary
tmp.delete(except)
tmp.collect { |e| e }
end
end
coba = MrongosArray.new("others", "sports_and_games", "conversation")
puts coba.each_unless("others")
r:belajar crawling_baby$ cat each_unless_spec.rb
#!/usr/bin/env spec
require "each_unless.rb"
describe MrongosArray do
before(:each) do
@coba = MrongosArray.new("others", "sports_and_games", "conversation")
end
it "should only show sports and games and conversation" do
@coba.each_unless("others").should == ["sports_and_games",
"conversation"]
end
end
</terminal>
silakan bagi yang ingin memodifikasi kode ruby tersebut beserta rspec
codes-nya agar menjadi termasuk kategori lebih "afdol" kode ruby -_-
maupun yang ingin memberikan argumen terhadap solusi tsb dengan
mengedepankan solusi terbaik masing-masing.
<code>
cat ide_mancing.rb
# gitu aja kok refot
['a','r','r','a','y'].select { |e| e != 'y' }
</code>
selamat bersenang-senang.