Pos roket RIP Hash yang dikutip dengan baik tampaknya menyiratkan sintaks Hash Rocket ( :foo => "bar"
) tidak digunakan lagi untuk mendukung hash gaya JSON baru ke Ruby ( foo: "bar"
), tetapi saya tidak dapat menemukan referensi pasti yang menyatakan bentuk Roket Hash. sebenarnya sudah usang / tidak disarankan pada Ruby 1.9.
99
Jawaban:
Penulis posting blog itu terlalu dramatis dan bodoh,
=>
itu masih sangat diperlukan . Khususnya::'where.is' => x
valid tetapi'where.is': x
tidak. Ruby 2.2 telah memperbaiki masalah ini sehingga Anda dapat mengatakannya'where.is': x
di Ruby 2.2+.:$set => x
valid tetapi$set: x
tidak. Di Ruby 2.2+ Anda dapat mengatasi masalah ini dengan kutipan:'$set': x
will do The Right Thing.'s' => x
valid tetapi's': x
benar-benar berbeda.Anda tentu saja dapat mengatasi hal-hal di atas dengan cara yang jelas:
tapi itu jelek dan tidak perlu.
Roket tidak akan kemana-mana tanpa melumpuhkan Ruby.
sumber
h[:s]
saya lakukan) sehingga sintaks gaya JavaScript hanyalah kerumitan yang tidak ada gunanya bagi saya. Sepertinya ide gee-jagoan yang dipikirkan dengan buruk bagi saya dan sekarang kita terjebak dengannya dan kebingungan terkait selamanya.a = [0,1,4,9]
vsa = Array.new(4){ |i| i**2 }
. Mengapa menggunakan yang pertama saat Anda terkadang perlu menggunakan yang terakhir? Jawaban: karena lebih nyaman. TIMTOWTDI memang memperumit bahasa, tetapi ini adalah kompromi. Lua benar-benar elegan pada intinya dan karenanya mudah dipelajari, tetapi menjengkelkan untuk benar-benar membuat kode. Ruby memiliki banyak kasus khusus dan fitur khusus yang membuatnya lebih sulit untuk dipelajari, tetapi menyenangkan untuk diprogram. Saya, untuk satu, selamat datang notasi Hash-dengan-simbol-kunci yang lebih sederhana untuk mengetik dan lebih mudah dibaca untuk kasus umum.my_hash = {a:1}
danmyhash[:a] = 1
, setidaknya, agak mengganggu. Saya yakin saya bukan satu-satunya yang merasa seperti ini.