Rust

Type System

Zero-cost abstractions, newtype pattern, type aliases, phantom types, const generics

20 pertanyaan wawancaraยท
Senior
1

Apa itu zero-cost abstraction dalam Rust?

Jawaban

Zero-cost abstraction adalah abstraksi yang tidak menimbulkan biaya runtime dibandingkan dengan kode setara yang ditulis secara manual. Compiler Rust mengoptimalkan abstraksi ini sehingga kode yang dihasilkan sama efisiennya dengan kode low-level yang ditulis tangan, tanpa overhead tambahan.

2

Apa keuntungan utama dari newtype pattern dalam Rust?

Jawaban

Newtype pattern membuat tipe baru yang berbeda yang membungkus tipe yang sudah ada, memberikan keamanan tipe pada compile time. Ini mencegah tercampurnya nilai dengan tipe dasar yang sama tetapi memiliki arti berbeda, seperti user ID dan product ID yang keduanya direpresentasikan sebagai integer.

3

Bagaimana cara mendeklarasikan type alias di Rust?

Jawaban

Sebuah type alias dideklarasikan dengan kata kunci type diikuti nama alias dan tipe targetnya. Misalnya, type Kilometers = i32 membuat alias untuk i32. Berbeda dengan newtype pattern, sebuah type alias bukan tipe baru yang berbeda, melainkan hanya sinonim yang dapat digunakan secara bergantian dengan tipe aslinya.

4

Apa perbedaan antara type alias dan newtype dalam hal type safety?

5

Apa itu phantom type di Rust?

+17 pertanyaan wawancara

Kuasai Rust untuk wawancara berikutnya

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

Mulai gratis