Rust

Penanganan Error

Result<T, E>, Option<T>, unwrap, expect, ?, error kustom, propagasi error

18 pertanyaan wawancaraยท
Junior
1

Tipe Rust mana yang merepresentasikan nilai yang mungkin ada atau tidak ada?

Jawaban

Option<T> adalah enum yang dapat berupa Some(T) yang berisi nilai, atau None yang menunjukkan tidak adanya nilai. Tipe ini menggantikan nilai null yang ada di bahasa lain dan memaksa developer untuk menangani secara eksplisit kasus ketika nilai tidak ada, sehingga menghindari error null pointer saat runtime.

2

Tipe Rust mana yang merepresentasikan operasi yang bisa berhasil atau gagal dengan sebuah error?

Jawaban

Result<T, E> adalah enum dengan dua varian: Ok(T) untuk keberhasilan yang berisi nilai kembalian, dan Err(E) untuk kegagalan yang berisi error. Tipe ini memaksa penanganan error secara eksplisit alih-alih menggunakan exception, sehingga kode menjadi lebih dapat diprediksi dan error lebih terlihat.

3

Apa yang dilakukan metode unwrap() pada sebuah Option<T>?

Jawaban

unwrap() mengembalikan nilai yang ada di dalam Some(T) jika nilai itu ada. Jika Option bernilai None, program akan panic (panic!) dan langsung berhenti. Metode ini praktis untuk prototyping tetapi sebaiknya dihindari di produksi karena tidak menangani kasus None dengan baik.

4

Apa perbedaan antara unwrap() dan expect()?

5

Apa yang dilakukan operator ? dalam sebuah fungsi yang mengembalikan Result<T, E>?

+15 pertanyaan wawancara

Kuasai Rust untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis