検索
ニュース

Rustは「Go」や「C++」と比較して何が優れているのか? Googleエンジニアが語るセキュリティニュースアラート

Googleは自社の経験を基に、ソフトウェア開発において、プログラミング言語RustがC++と比較して高い生産性と安全性を実現していると報告した。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 Googleは2024年3月27日(現地時間、以下同)、英国ロンドンで開催された「Rust Nation UK Conference」において、ソフトウェア開発にプログラミング言語「Rust」の活用を進めていることを発表した。

Rustは「Go」や「C++」と比較して何が優れているのか?

 同カンファレンスには、「Android」でコンパイラやランタイムチームなどを率いているラース・バーグストローム氏が登壇し、実際の経験を基にプログラミング言語「Go」や「C++」と比較してRustを使うことで高い生産性を実現できていると伝えた。

 バーグストローム氏はまずRustの利点としてパフォーマンスを挙げた。Rustで開発されたソフトウェアが高いパフォーマンスを発揮することはすでに明らかにされており、同氏は「Dropbox」や「Figma」などがサービスをRustに書き換えたことを事例として取り上げている。

 同氏はさらに、Rustの特徴の一つとしてメモリ安全性を挙げた。この点に関しても以前から知られていることだが、2024年2月26日にホワイトハウスがソフトウェア開発者にメモリの安全性を考慮したプログラミング言語に切り替えることを推奨するレポート「BACK TO THE BUILDING BLOCKS: A PATH TOWARD SECURE AND MEASURABLE SOFTWARE」を発表し、その中でRustを取り上げたことでさらに広く認知されることになった。

 今回の発表で特に注目すべきは、バーグストローム氏がGoやC++からRustに移行するという経験に触れ、その生産性について言及した点にある。バーグストローム氏によれば、GoからRustへの移行時には生産性の低下はなし、C++からRustへの書き換えにおいては労力が2倍以上減少したという。

 Rustの課題としては学習コストの高さが指摘されることが多い。バーグストローム氏はその点について「Googleの開発者がRustによるコードベースで業務に貢献できるようになるまでには約2カ月がかかる」と説明している。

 講演では、Rustが他のプログラミング言語と比較してコードレビューが容易である点についても言及されている。バーグストローム氏はC++とRustにおけるエラー処理および状態管理を比較し、Rustの読みやすさや安全性、修正の容易さが利点として強調した。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る