読後感 β

IT業界で話題の技術書を読んで感想をしたためるブログです。

Rust 入門書の決定版「実践 Rust 入門」

実践Rust入門[言語仕様から開発手法まで]

Rust は C/C++ 並みの速度とメモリ安全性を併せ持った、近年注目を集めているシステムプログラミング言語の一つです。元々は Mozilla に所属していた Graydon Hoare 氏の個人プロジェクトとして誕生し、Firefox 次期ブラウザエンジンの実装言語としての採用をきっかけに本格的な開発がスタートされました。こういった経緯からもわかるように、Rust は高いパフォーマンスが求められるユースケースにマッチする言語です。さらに、モダンで安全な言語仕様を提供するという点から、他の言語では替えのきかなかった現場での導入が進んでいます。実際に Rust は非常に好意的に受け入れられており、Stack Overflow の主催する「エンジニアに最も愛されている言語」というアンケートでは 4 年連続 1 位(2016年~現在まで)という輝かしい成績を残しています。

そんな Rust の言語仕様からエコシステムまでを、まるっと一冊で押さえられる書籍が「実践 Rust 入門」です。Rust は学習コストの高い言語として知られていて、例えばモダンなメモリ管理機能(所有権借用、ライフタイム)は習得の難しいとされている仕様の一つでしょう。Go のような学習コストの低い言語であれば、オフィシャルのドキュメンテーションをサクッと読んで覚えるというのもアリだと思うのですが、Rust ではなかなかそうは行かないでしょう。そこで何らかのリソースにあたって学習に取り組むわけですが、日本人が日本語で書いた文章で覚えられるのであればそれに越したことはないですよね。本書ではその機能がどうして必要かという背景から入りつつ、図やコラムを交えた補足も充実しています。難しい内容をうまく噛み砕いて説明されていて、クオリティの高い文章であると思いました。

さらに、本書の後半は実践編と称したハンズオン形式の説明となっております。ここでは、エラー処理をどのように用意するか、ドキュメントやテストの書き方など、言語仕様の解説ではカバーできない範囲が網羅されています。それに加えて、個人的にはパッケージの選定が役に立ちました。例えば、コマンドラインツールの開発に必須なコマンドラインパーサのパッケージ(Clap)や、REST API のコールに必要な HTTP クライアントパッケージ(Reqwest)です。慣れていない言語だと「こういう時はこのパッケージ使っとけ」が分からず、調べる手間がかかりがちですよね。これを実用例を含めてサクッと知ることが出来たので、サンプルプログラムを実装する上で非常に助かりました。

総括として、わかりやすくコスパが高い書籍だと思います。難解と言われている言語の質の高い説明資料が、言語仕様からエコシステムまで手に入るので、これ一冊あれば Rust が始められるという安心感があります。あと、本書のような人に薦められるレベルの入門書があると、その言語の導入をチームに進めやすくて良いですね。ぜひみなさんこの書籍をきっかけに Rust を始めましょう!

実践Rust入門[言語仕様から開発手法まで]

実践Rust入門[言語仕様から開発手法まで]

 

(アフィリエイト無しリンクはこちら