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
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
2.4k
楽して成果を出すためのセルフリソース管理
clipnote
0
180
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
530
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
170
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
310
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
560
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
22
5.9k
Processing Gem ベースの、2D レトロゲームエンジンの開発
tokujiros
2
130
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
320
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.5k
アセットのコンパイルについて
ojun9
0
130
MCPでVibe Working。そして、結局はContext Eng(略)/ Working with Vibe on MCP And Context Eng
rkaga
5
2.3k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
A designer walks into a library…
pauljervisheath
207
24k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Designing for Performance
lara
610
69k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
The Invisible Side of Design
smashingmag
301
51k
Raft: Consensus for Rubyists
vanstee
140
7.1k
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 …. パフォーマンスやスマートポインタによる メモリ管理もある最高の言語!!