If you don't know me, then, you would not know who I am | Belajar Rust #1
Tags: rust, belajarrust, programming, belajarpemrograman
Published: 2022-01-14 19:14:50

Ujar pepatah yang ada di Indonesia *“tak kenal maka tak sayang”* . Sebelum kita mempelajari lebih lanjut tentang rust, ada kalanya kita mengetahui terlebih dahulu tentang rust.

## Sejarah Rust

Rust sendiri tercipta karena proyek personal dari seorang jenius yang bernama **Graydon Hoare**, kita sebut saja Hoare. Hoare bekerja di *Mozilla* yang mana merupakan organisasi nirlaba di balik *Firefox*. Proyek personal ini kemudian dilirik oleh *Mozilla*, yang kemudian berujung kebaikan dimana *Mozilla* mensponsori proyek ini pada tahun 2009 dan diumumkan pada tahun 2010. Stable release pertama Rust meluncur pada tanggal 15 Mei 2015.

## Apa Itu Rust?

Rust merupakan bahasa pemrograman sistem yang aman dan *concurrent*. Concurrent computing adalah bentuk komputasi di mana beberapak komputasi dijalankan secara bersamaan. Rust sendiri terinspirasi dari beberapa bahasa pemrograman, seperti.

- System Programming Languages : (C, C++)
- Functional Programming Languages : (Meta Language, Haskell, Erlang)

## Statistik Rust

Survey membuktikan bahwa Rust merupakan bahasa yang paling dicintai pada tahun 2021.


![Stack Overflow Developer Survey](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fsbsdj2gwqbxe228gsr6.png)

Sumber : [stackoverflow](https://insights.stackoverflow.com/survey/2021#most-loved-dreaded-and-wanted-language-love-dread)

## Rust Itu Digunakan Untuk Apa sih?

Rust sendiri banyak digunakan di beberapa proyek, yaitu:

- cross-platform command line support
- embedded systems programming
- building powerful web applications
- building distributed online services

Dan yang sangat terbaru kita bisa membuat smart contracts solana menggunakan Rust.

Saat ini banyak perusahaan yang menggunakan Rust dalam production dan building apps mereka. Seperti, DropBox, Atlassian, dan Amazon’s Firecracker.

## Apa yang Membuat Rust Berbeda?

Sekian banyaknya bahasa pemrograman, apa sih sebenarnya yang membuat Rust berbeda? berikut ini beberapa fakta kenapa Rust berbeda.

### Kecepatan

Rust tidak membayar untuk abstraksi, hanya untuk fitur yang benar-benar digunakan. Ini meningkatkan kualitas kode dan keterbacaan tanpa mengorbankan biaya runtime.

### Keamanan

Rust tidak memiliki garbage collector. Ini menggunakan konsep ownership dan borrowing (kita bahas nanti ditunggu aja) untuk memastikan keamanan memori. Di Rust, objek dikelola oleh bahasa pemrograman dari awal hingga akhir. Mengalokasikan jumlah memori yang tepat yang dibutuhkan dan tidak secara otomatis dialokasikan oleh sistem saat tidak lagi digunakan.

### Cargo Manager

Rust menyediakan cargo manager yang dimana berperan sebagai penyedia libraries dan frameworks yang membantu developer untuk membuat aplikasi warbyasah, cargo manager juga berperan mendistribusikan code ke end-users.

### Pesan Error

Pesan error di Rust itu sangat menarik, pesan ini ditampilkan menggunakan warna. Rust tidak hanya menampilkan baris yang salah namun Rust memberitahukan kita apa saja type of error-nya.

### Threads without Data Races

Data race adalah kondisi dimana dua atau lebih thread dapat mengakses lokasi memori yang sama. Rust menggunakan konsep ownership untuk menghindari balapan data (nanti ownership dibahas pas udah jago dikit).

---

Jika ada kesalahan dalam menyampaikan konsep dan penulisan mohon bantuannya di kolom discussion 🤗. Terima kasih.

> `#samasamabelajar`
> 

---

> [Twitter](https://twitter.com/myusufadp)
> 
> 
> [Buy me a coffe](https://saweria.co/myusufadp)
>
>