Rustは「Go」や「C++」と比較して何が優れているのか? Googleエンジニアが語る:セキュリティニュースアラート
Googleは自社の経験を基に、ソフトウェア開発において、プログラミング言語RustがC++と比較して高い生産性と安全性を実現していると報告した。
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の読みやすさや安全性、修正の容易さが利点として強調した。
関連記事
- バイデン政権、メモリ安全性の高いプログラミング言語の採用を呼びかけ
重大な脆弱性を減らすための取り組みの一環として、メモリ安全性の高いプログラミング言語をソフトウェアに採用する傾向が強まっている。 - Copilot for Securityの一般提供が4月1日から開始 従量課金制でより利用しやすく
Microsoftは2024年4月1日から生成AIソリューション「Microsoft Copilot for Security」を一般提供すると発表した。従量課金制でセキュリティアナリストを支援する複数の機能を提供する。 - PyPIにマルウェアキャンペーン 悪意あるパッケージのダウンロードに注意
PyPIは新しいプロジェクトの作成および新規ユーザー登録を一時停止した。この措置はマルウェアアップロードキャンペーンに対応するためで、Checkmarxが複数の悪意あるパッケージの調査結果を公表している。 - 生成AIは攻撃者と防御者、どちらに有利か? AWSのCISOが語る
生成AIは劇的な効果を発揮するわけではないが、使い方によっては大きな力を発揮する。この技術は攻撃者と防御者のどちらに有利に働くのだろうか。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.