Slide 1

Slide 1 text

Clippyを使ってRustを独習しよう
 @matsu7874
 2020.10.20 Shinjuku.rs #12


Slide 2

Slide 2 text

自己紹介 ● 松本健太郎 (Kentaro MATSUMOTO) @matsu7874 ● ソフトウェアエンジニア@フォルシア株式会社 ○ Rustでインメモリデータベースを開発 ○ インターンの企画とか技術広報とか ● 興味 ○ Webアプリケーション ○ 技術広報・エンジニア採用 ○ 競技プログラミング 2

Slide 3

Slide 3 text

『実践Rustプログラミング入門』 共著 ● 8月22日発売 ¥3,600(税別) 秀和システム ● 360/508ページくらい実践的な内容 ○ Webアプリ ○ WebAssembly ○ GUI ○ 組み込み ○ プロダクションで使う話など ● Shinjuku.rsで知り合ったエンジニアで共著 3

Slide 4

Slide 4 text

目次 ● Rustを一人で学ぶときの壁 ● Clippyとは ● 好きなルール紹介 4

Slide 5

Slide 5 text

Rustを一人で学ぶときの壁 ● 言語特有の概念が分からん ○ The Bookを読め ● 文法の使い方が分からん ○ Rust By Exampleを読め ● Rustっぽい書き方が分からん ○ Clippyに直してもらおう! 5

Slide 6

Slide 6 text

Clippyとは ● Rust用のLinter ○ 400を超えるルールが実装済み ○           など個別に警告レベルを設定可能 ○ 開発が活発      6 #![allow(clippy::ルール名)]

Slide 7

Slide 7 text

Clippyの導入 $ rustup update
 $ rustup component add clippy
 
 $ cargo clippy
 
 7

Slide 8

Slide 8 text

Clippyの動作例 8

Slide 9

Slide 9 text

9

Slide 10

Slide 10 text

好きなルール紹介 10

Slide 11

Slide 11 text

chars_next_cmp 11

Slide 12

Slide 12 text

if_let_some_result 12

Slide 13

Slide 13 text

map_entry 13 場合によるので
 計測が必要!

Slide 14

Slide 14 text

slow_vector_initialization 14

Slide 15

Slide 15 text

Clippyを使って Rustらしいコードを書こう 15