Open3
バックエンドエンジニアを目指す人のためのRustを読む

メモしながら読み進めます。
雰囲気で書いてたのと、productionレベルでこの言語を扱えるようになりたいので、読む
正直1から書いててもあまり意味がないので、わからないところだけ書きます。

1-2 Rustは高パフォーマンス
- machine codeにコンパイルされるから
- GCがいらない
- ゼロコスト抽象化をしているから
- https://qiita.com/kichion/items/d5d87b30176e1d2d5f54
- これよくわからないので、後でドキュメント読み漁る
1-3 Rustは安全性が高い
よく言われてるやつ
所有権とかそのへん?
1-4 Rustは生産性が高い
- crateでパッケージを手軽に扱える。
- デフォルトでテストツールがある。
pub fn add (a: i32, b: i32) -> i32 {
a+b
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_add() {
assert_eq!(add(1, 2), 3);
}
}
- formatter(rustfmt)やlinter(clippy)がビルトイン
- Test / Format / Lintが全部備わっているの、フロントエンドだとDenoくらいなのでこれは嬉しい
-
Option
型がある。- null許容?
- nullじゃなくてNoneらしい
- !Optionなら、絶対に値があることになる
-
Result
型もある

2-1 Rustのツール一式をインストールしよう
-
Cargo
- ビルドツール&パッケージマネージャ
- Deno or bunが近そう
-
rustc
- Rustコンパイラ
-
clippy
- linter
-
rustfmt
- formatter
-
rustdoc
- pydocとかjsdocのrust ver
Rustでプログラムを書いて見よう
ようやくここでHello world
rustはファイル命名規則はsnake case
問題なく書けたので、rustc hello_world.rsしようとしたら、linker 'link.exe’ not found
が出た。
例のごとく環境構築をミスしている