編集部からのお知らせ
新着記事まとめPDF「IBM分社のキンドリル」
ZDNet Summit 2021開催のご案内

Facebookが「Rust Foundation」に参加--「Rust」言語をいかに活用してきたか

Liam Tung (ZDNet.com) 翻訳校正: 編集部

2021-05-02 08:30

 Facebookがプログラミング言語「Rust」を支援する「Rust Foundation」に加わった。Rust FoundationにはすでにAmazon Web Services(AWS)、Google、華為技術(ファーウェイ)、Microsoft、Mozillaが参加している。

 Facebookは、Rustの採用を積極的に進めているIT大手企業の1つだ。RustはMozillaが支援し、開発されたプログラミング言語で、CやC++といった言語よりもメモリー安全性が高いため、システムプログラミングの世界で人気が高まっている。ドライバーやコンパイラーといったコンポーネントの開発で魅力的な選択肢だ。

 Rust Foundationは、AWS、Google、ファーウェイ、Microsoft、Mozillaを初期メンバーとして2021年2月に設立された。Microsoftは「Windows」や「Azure」の一部でRustを試験的に採用している。Googleは「Androidオープンソースプロジェクト」(AOSP)で、RustによるOS構成要素の開発をサポートしているほか、RustをLinuxカーネルに導入する取り組みを支援している。

 Facebookのエンジニアリングチームによれば、同社はRustがバージョン1.0に到達した1年後の2016年からRustを活用しているという。

 「RustはC++のような先行言語のパフォーマンスに加えて、コードの安全性を開発者にもたらす。Facebookではすでに数百人の開発者が数百万行のコードをRustで書いている」と、Facebookのエンジニアリングチームは述べる。

 Facebookは、Rust Foundationの「プラチナ」メンバーとして加わり、他の大手テクノロジー企業とともに財団を支援する。

 「Facebookは2016年からRustを導入して以来、ソース管理からコンパイラーまで、開発のあらゆる側面で活用してきた」と、Facebookでオープンソースエコシステムを率いるJoel Marcey氏は言う。同氏は現在、Rust Foundationの理事を務める。

 「FacebookがRust Foundationに参加したのは、この言語の改善と発展に寄与するためだ。RustはFacebookだけでなく、世界中の開発者にとって重要な存在となっている。他のメンバー企業やRustコミュニティとともに、Rustをシステムプログラミングなどのためのメインストリームの言語の選択肢とするべく活動に参加していきたい」

 Facebookはすでに多くのプロジェクトでRustを活用してきた。その1つが、物議を醸した仮想通貨(暗号資産)プロジェクトの「Libra」だ。Libraは現在、Diem Associationによって運営されており、Facebookはその中核メンバーとしてデジタルウォレット「Novi」に関わっている。Facebookによれば、Diemブロックチェーンは主としてRustで書かれているという。

 Facebookはソース管理サーバーの「Mononoke」プロジェクトもRustを使って構築している。

 「当初、Mononokeの開発にはC++を使うことが適切だと考えられていた。当時のFacebookのバックエンドのコードベースはほぼC++だったので、Mononokeも当然、C++で実装するつもりだった」とFacebookのエンジニアリングチームは言う。

 「しかし、ソース管理チームはソース管理のバックエンドの信頼性に配慮する必要があった。破損やダウンタイムの発生はサービスの停止につながる恐れがあるので、信頼性は最優先事項だ。チームがC++ではなく、Rustを選んだ理由もそこにあった」

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

特集

CIO

モバイル

セキュリティ

スペシャル

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]