Facebook、開発言語に「Rust」採用 次期ビルドシステムの開発で

今回は「Facebook、開発言語に「Rust」採用 次期ビルドシステムの開発で」についてご紹介します。

関連ワード (後対応、簡単、表明等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、It Media News様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


この記事は新野淳一氏のブログ「Publickey」に掲載された「」(2021年7月28日掲載)を、ITmedia NEWS編集部で一部編集し、転載したものです。

 Facebookは同社のソフトウェア開発において、同社が主導して開発しているオープンソースのビルドシステム「」を利用しています。

 Buckは高速なビルドが可能な点を大きな特徴としており、もともとAndroidアプリケーション向けのビルドシステムとして登場しました。

 その後対応する言語やプラットフォームが拡張され、現在では15種類以上のプログラミング言語と、さまざまなスマートデバイス、VRヘッドセット、そしてサーバアプリケーションにまで対応しています。

次期ビルドシステムの開発を決断

 しかしこうした拡張を重ねる中でBuckの複雑さは増していき、新機能の追加がどんどん難しくなってきたと、Facebook Developersのブログに投稿された記事「」で吐露されています。

 同社の開発チームは約4年前から、Buckのアーキテクチャの改善を段階的に行う取り組みを始めましたが、それは困難だと判断。

 過去の互換性を保ちつつ、拡張が容易な新たなビルドシステムを新たなBuckとして開発すると表明しました。

 下記は「The future of Buck」からの引用です。

The limited extensibility of Buck v1 has been a recurring source of pain for our community. With this new build system, we’ve focused on extensibility as a primary goal and every build rule is written outside of the core build language as a user-defined rule.

Buck v1の拡張性の低さは、私たちのコミュニティーにとって繰り返しの悩みの種でした。この新しいビルドシステムでは、拡張性を第一の目標とし、全てのビルドルールは、コアのビルド言語の外で、ユーザー定義のルールとして書かれます。

 そして次世代Buckの開発にはRust言語を採用する方向であることも明らかにしました。

Rustを開発言語に採用へ

 Rust言語はMozillaが開発し、コミュニティーベースで開発が進められてきた、C言語のように低レベルのシステム開発向けに作られたオープンソースのプログラミング言語です。

 不正なメモリ領域を指すポインターなどを許容しない安全なメモリ管理や、マルチスレッド実行においてデータ競合を排除した高い並列性を実現している点などの特長を備えているため、安全かつ高速なアプリケーション開発を実現します。

 今年、2021年2月にはRustの開発を推進するが設立されるなど、存在感が高まっています。

 Rustを用いることで、どのような利点があるのか。Facebookは記事の中で次の4つの項目を挙げています。

Rust’s _async/await_ syntax makes writing asynchronous code really smooth and Rust helps get the complex concurrency details correct. Each migration of Buck’s Java computations to a concurrent computation was a months-long, difficult transition and there are still significant single-threaded bottlenecks there.

Rustのasync/awaitシンタックスは、非同期のコードをとてもスムーズに記述できますし、Rustは複雑な並行処理の詳細を正しく理解するのに役立ちます。BuckのJavaの計算を一つ一つ並行処理に移行するのは数カ月に及ぶ困難な作業でしたし、シングルスレッドの大きなボトルネックがまだ存在しています。

Rust has a lot of high-level language features that make development easier and more enjoyable. These are things like enums, pattern matching, traits, procedural macros and all the other features that contribute to Rust developers in general loving it so much.

Rustには、開発をより簡単で楽しいものにしてくれる多くの高レベルな言語機能があります。それらはenum、パターンマッチング、trait、手続き型マクロなどで、Rustの開発者の多くに愛されています。

Rust gives greater control over memory allocations. Garbage collecting languages (even with generational collection) have challenges dealing with incremental computations like Buck performs.

Rust はメモリの割り当てをより細かく制御することができます。ガベージコレクション言語は(たとえジェネレーショナルコレクションであっても)、Buckが行うようなインクリメンタルな演算に対応するのは困難です。

Rust is high performance. We’ve seen significant speedups from the translation of things into Rust.

Rustは高性能です。Rustに移植することで劇的な性能向上を私たちは見てきました。

 Rustは2020年のStack Overflowの調査で、IT技術者からもっとも愛されている言語であることが示されています。

 まだ日本ではRustによる本格的な開発事例は目立っていませんが、今後はRustの利用が広がると予想されます。

Copyright © ITmedia, Inc. All Rights Reserved.

表明(ひょうめい)の意味 - goo国語辞書

表明(ひょうめい)とは。意味や解説、類語。[名](スル)自分の考え・決意などを、はっきりあらわし示すこと。「引退を表明する」 - goo国語辞書は30万4千件語以上を収録。政治・経済・医学・ITなど、最新用語の追加も定期的に行っています。

「表明」の類義語や言い換え | 申し立てる・申し上げるなど …

表明の言い換えや別の言い方。・意義素類語前に置く申し立てる ・ 申し上げる ・ 陳じる ・ 申したてる ・ 言い立てる ・ 言立てる ・ 申立てる ・ 陳べる ・ 申し出る ・ 言いたてる ・ 提唱 ・ 云う ・ 陳ずる ・ 申し...

表明 - Wiktionary

surface; exterior; to watch; to show; express; an example; a list or table; a meter; a watch; chart; external. more . clear; bright; to understand. clear; bright; to understand; next; the Ming dynasty. simp. and trad. (表明…

表明とは - コトバンク

精選版 日本国語大辞典 - 表明の用語解説 - 〘名〙① (形動) 明らかであること。明白であること。また、そのさま。※開院式の勅語‐明治二三年(1890)一一月二九日「我か臣民の忠良にして、勇進なる気性とをして、中外に表明ならしむることを得む」 〔黄庭内景玉経‐脾部〕② (━する) 考えや...

表明とは - Weblio辞書

「表明」の意味は自分の考え・決意などを、はっきりあらわし示すこと。Weblio国語辞典では「表明」の意味や使い方、用例、類似表現などを解説しています。

表明英文_表明英语怎么说_翻译

表明态度; 태도를 표명하다 表明决心; 결의(決意)를 나타내다 →[表白(1)] 表明的俄语 :[biǎomíng] свидетельствовать, показывать; выражать

表明_百度百科

表明,读音为biǎo míng,汉语词语,意思是指表示清楚;比较确切地指出。. 。. 中文名. 表明.

「表明する」の類義語や言い換え | 提示する・是非を問うなど …

表明するの言い換えや別の言い方。・意義素類語提示して意見を乞う提示する ・ 是非を問う ・ 意見を聞く ・ 提案する ・ 打診する ・ 世に問う ・ 賛否を問う ・ 意見を問う ・ 言挙げする ・ 公にする ・ 表明する ・ 可否を伺...

Weblio和英辞書 - 「表明」の英語・英語例文・英語表現

「表明」は英語でどう表現する?【単語】expression...【例文】The Prime Minister expressed his opinion on the economic problems between Japan and the United States...【その他の表現】manifestation... - 1000万語以上収録!英訳・英文・英単語の使い分けならWeblio英和・和英辞書

決意表明の好印象な書き方と例文【所信表明】 – ビズパーク

所信表明の例文と書き方をご紹介します。昇進した時に決意表明はつき物です。でもよくよく考えると決意表明とは何なのでしょうか。所信表明と違いはあるのでしょうか。決意表明・所信表明の決意文の例とともに確認し...

COMMENTS


53989:
2021-07-29 20:33

パーツリストに載ってる品番は後対応品番も含めて製廃だけど、FAST叩いて出てくる互換品はまだモノタロウで一応出てくるな…。ダメ元でポチってみるか。

53990:
2021-07-29 01:05

サンダルは確かにサイズはないです が、引換券を貰えるのですが、後日入荷後に後対応で貰えるようです 2回行かなきゃいけないのが難点ですが…

Recommended

TITLE
CATEGORY
DATE
音声アシスタントの標準策定へ–Linux Foundationが立ち上げた「Open Voice Network」
IT関連
2021-07-06 17:20
読売新聞子会社でクレカ情報流出 すでに767万円の金銭的被害も確認
セキュリティ
2021-07-15 04:15
Tomcat Javaアプリケーションのコンテナ移行自動化ツール群「Tomcat modernization flow」、Google Cloudがプレビューリリース
Google Cloud
2022-02-21 03:03
1000億円超を調達しながら失敗に終わったEVのバッテリー交換ビジネスを復活させるAmple
モビリティ
2021-03-28 07:45
WebAssemblyランタイム「Wasmer 2.1」リリース。WASI用に仮想ファイルシステムを実装し、ブラウザでもWASIが利用可能に
Deno
2022-01-12 18:47
FTC、テクノロジー担当局を新設–大手IT企業への対応強化か
IT関連
2023-02-21 01:37
プロンプト作成の負担を軽減–セールスフォース、生成AIの取り組み解説
IT関連
2024-03-20 05:20
AI導入は組織の全部門が関わる取り組み–CIOが果たすべき主導的役割
IT関連
2023-11-14 01:03
ダイキン工業、空調機器の不具合監視や異常予兆検出を可能にするAIシステムを開発
IT関連
2022-03-03 06:13
東京で走り出した電動キックボードシェア「Luup」 思い知った最高時速15kmの現実 (1/3 ページ)
くわしく
2021-05-15 16:12
セキュリティの観点から議論される、オープンソース開発者への適切な対価の必要性
IT関連
2022-01-29 11:52
CIOやIT部門が直面しているITの拡張、役割と変化とは–ガートナー・長谷島氏
IT関連
2024-01-05 01:01
LINEで不具合か メッセージ送受信や通話に支障 「詳細を確認中」
ネットトピック
2021-04-13 01:30
ヤオコー、AI活用した自動発注システムを全店導入–日立製作所らと協創
IT関連
2023-02-23 10:35