Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rustの好きな3つの点
Search
senk
February 25, 2021
Programming
0
200
Rustの好きな3つの点
RustLT会において発表したRustの好きなポイントについて語るLT資料です。
senk
February 25, 2021
Tweet
Share
Other Decks in Programming
See All in Programming
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
900
One Enishi After Another
snoozer05
PRO
0
160
PHPに関数型の魂を宿す〜PHP 8.5 で実現する堅牢なコードとは〜 #phpcon_hiroshima / phpcon-hiroshima-2025
shogogg
1
340
iOSでSVG画像を扱う
kishikawakatsumi
0
170
Go言語の特性を活かした公式MCP SDKの設計
hond0413
2
540
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
190
AI Agent 時代的開發者生存指南
eddie
4
2.1k
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
7.7k
Pythonに漸進的に型をつける
nealle
1
130
TransformerからMCPまで(現代AIを理解するための羅針盤)
mickey_kubo
7
5.4k
オープンソースソフトウェアへの解像度🔬
utam0k
17
3.1k
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
270
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1371
200k
A Modern Web Designer's Workflow
chriscoyier
697
190k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
Become a Pro
speakerdeck
PRO
29
5.6k
A designer walks into a library…
pauljervisheath
209
24k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Visualization
eitanlees
149
16k
Git: the NoSQL Database
bkeepers
PRO
431
66k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Context Engineering - Making Every Token Count
addyosmani
8
300
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Transcript
Rust LT3 senk
⾃⼰紹介 法政大学で暗号研究してるM1。 競技プログラミングや、Zenn・Qiitaで暗号関 連の記事書いています。 プログラミングの他、デザインとかイラストも 好きでやっている。 【Twitter】 @enkanakoi 【最近あったこと】 昨日、修論中間発表でした
Senk
テーマは… Rustを褒め称えるだけ
エラー処理 • とりあえず失敗する可能性があったら、 OptionやResultに包んでしまう。Nullを型レ ベルで扱えるのが強力すぎる。 配列外参照とオーバーフローを絶対に許せなくなった累積和 パーサーでand_thenとmapと…でメソッドチェーンする例 ポジティブに書ける!
cargo サブコマンドと組合わせることで • ビルド • 実⾏ • パッケージ管理 • ユニットテスト
が⾏えるのが凄すぎる…のにrustfixや cargo-edit、clippyで拡張できる贅沢さ。
とりあえず 全⾔語欲し い機能 cargo fmt 魔法のようにコードが整形される。 cargo add & rm
クレートが容易に管理できる。
トレイト implで追加していく書き方が好き(語彙力) その 多すぎる出来ることの例 • 型エイリアスにimpl出来る • 関連定数や関連関数をimpl出来る • トレイトオブジェクトによるポリモーフィズ
ム メソッドチェーン
その他 • 型の暗黙の変換がない • Sizedトレイトを実装していないと渡せ ない&返せない&束縛できない • 式ベース⾔語 • デフォルトで不変
• #[test]とcargo testで⼿軽にテスト!
まとめ • Cargo • エラー処理 • トレイト • テスト、パターンマッチ、 型変換、
etc …. パフォーマンスやスマートポインタによる メモリ管理もある最高の言語!!