Video: Ruby Programming Language - Full Course 2024
Ruby mencoba untuk membantu bila beberapa bagian dari program Anda salah ketik atau melakukan sesuatu yang tidak terduga. Ruby menampilkan pesan peringatan atau pesan kesalahan, seringkali dengan informasi tentang di mana ia menemukan masalah dalam kode Anda. Misalnya, jika Anda secara tidak sengaja membuat kesalahan ketik saat mengerjakan matematika sederhana, Ruby akan memberi tahu Anda bahwa Anda memiliki kesalahan sintaks.
Sintaksnya seperti tatabahasa dalam bahasa Inggris. Sintaks bahasa pemrograman adalah struktur, urutan, dan ejaan perintah dan pernyataan dalam bahasa tersebut.
2. 2. 2: 036> 3j + 3 SyntaxError: (irb): 36: kesalahan sintaks, tak terduga TIDENTIFIER, mengharapkan input akhir 3j + 3 ^ dari / usr / bin / irb: 11: in & apos;
& apos;Anda tidak bermaksud mengetik huruf j setelah angka 3, dan tidak seperti apa yang mungkin Anda tulis di sekolah saat belajar aljabar, sintaks ini tidak valid Ruby.
Ruby menampilkan pesan kesalahan yang sedikit samar, namun jika Anda melihat kesalahan sintaks dan nomor baris atau lokasi, ini memberi Anda tempat untuk mulai menyelidiki apa yang salah. Dalam kasus ini, Ruby dengan senang hati menunjukkan baris yang salah dengan simbol panah kecil yang menunjuk pada titik yang dianggap salah. Terima kasih, Ruby!
Apa yang terjadi saat Anda mencoba membuat Ruby menampilkan googolplex? A googol adalah istilah yang menyenangkan yang berarti 10 dinaikkan ke kekuatan ke-100. A googolplex diikuti oleh googol (10 100 ) nol. Seharusnya, keponakan Amerika matematika Edward Kasner yang berusia 9 tahun, Milton Sirotta, menciptakan istilah tersebut dan mendefinisikannya sebagai digit "satu, diikuti dengan menulis angka nol sampai Anda lelah. " Di Ruby Interaktif (IRB), simpan googol dalam variabel yang disebut googol:
Sekarang coba naikkan 10 dengan googol:
2. 2. 2: 031> 10 ** googol (irb): 31: peringatan: dalam a ** b, b mungkin terlalu besar => Infinity
Ada beberapa batasan kemampuan matematika Ruby. Di sini, Ruby menunjukkan kepada Anda sebuah peringatan bahwa perintah yang baru Anda ketik tidak berfungsi karena sebagian perhitungannya terlalu besar. Ini menunjukkan hasilnya sebagai Infinity, yang nampaknya benar.
Lihat apakah Ruby dapat menemukan masalah lain:
2. 2. 2: 037> x + 5 NameError: undefined variabel lokal atau metode & apos; x & apos; untuk main: Obyek dari (irb): 37 dari / usr / bin / irb: 11: in & apos;
& apos;Dalam kasus ini, Anda mencoba menggunakan variabel yang belum Anda simpan. Ruby tidak tahu apa yang harus dilakukan di sini, karena tidak dapat menemukan variabel bernama x (belum).Anda sering melihat kesalahan ini jika Anda membuat kesalahan ketik atas nama variabel (atau metode). Periksa ejaanmu dan coba lagi.
Kesalahan umum Ruby lainnya dapat dilihat dengan kode ini:
2. 2. 2: 038> x = nil => nil 2. 2. 2: 039> x + 5 NoMethodError: metode undefined & apos; + & apos; untuk nihil: NilClass dari (irb): 39 dari / usr / bin / irb: 11: in & apos;
& apos;Anda bisa menganggapnya sebagai cara Ruby untuk mewakili "tidak ada apa-apa. "Kesalahan Ruby menunjukkan bahwa ia tidak tahu bagaimana melakukan penambahan dengan nihil, yang nampaknya masuk akal. Dalam kode Anda, ini mungkin berarti Anda diharapkan menerima hasil dari bagian lain program ini, namun kode tersebut tidak mengembalikan apa pun.
Salah satu masalah terakhir yang sering Anda lihat adalah jika Anda mencoba melakukan sesuatu dengan data yang tidak sesuai:
2. 2: 040> x = "a" => "a" 2. 2. 2: 041> x + 5 TypeError: tidak ada konversi implisit dari Fixnum ke String dari (irb): 41: in & apos; + & apos; dari (irb): 41 dari / usr / bin / irb: 11: in & apos;
& apos;Huruf a ditetapkan ke variabel x. Namun, di sini, Anda mencoba menambahkan angka 5 ke huruf a. Jelas ini omong kosong. Ruby juga berpikir demikian, dan mengatakan kepada Anda bahwa itu tidak dapat mengubah data dengan cara membuatnya bekerja.
Anda mungkin akan mengalami kesalahan sintaks paling sering, karena kesalahan ketik adalah bug yang paling mudah dibuat. Bila Anda melihat pesan kesalahan, tindakan terbaik Anda adalah dengan cermat membandingkan apa yang Anda ketik dengan kode proyek Anda.