Googleが次世代のオープンソースオペレーティングシステムフクシアの開発者向けサイトを発表しましたフクシア編集言語政策を、ドキュメントはC、C ++、ダーツ、利点と欠点を持つ錆Goが説明し、明確に開発におけるこれらの言語のどれでしょうフクシア生態を指定しますサポートのレベルを取得する方法について説明します。
この戦略文書は、フクシアプログラミング言語外のこのプロジェクトにフクシアターゲットデバイスソフトウェアの開発を構築する開発者のためのフクシアのプラットフォームソースツリー(フクシアプラットフォームのソースツリー)と、端末での使用やサポートについて説明します。
フクシアプラットフォームソースツリーがfuchsia.googlesource.comフクシアでホストされている元の端末開発者は、フクシアプラットフォームのソースツリーの外にフクシアのためのソフトウェアを書いている人です。ターミナル開発、フクシアプラットフォームソースツリーと比較するとフクシアシステムに大きな変更をし、その基礎となる技術を収束させることができる、唯一のフクシアプラットフォームのソースツリーに影響を与える実行することができ、他のスタッフとの調整を必要とせずに、変更します。代わりに、変更がより協調の必要性のターミナルの開発者に影響を与え、長い実行時間を要します。
GoogleはフクシアSDKは彼らがFIDL(フクシアインタフェース定義言語、フクシアインタフェース定義言語)言語固有のバックエンドとサポートライブラリを含む、ソフトウェアフクシアの開発を支援するツールとライブラリが含まれている手段を必要とし、端末の開発者のためのサポートを導入しました。あなたは錆/ダートと他の言語非同期(async)使用して、たとえば、線形コードを使用することができ、非同期プログラミング手段を強力にサポートすることを/非同期書き込みプログラムが待っています。
文書の後以下の結論は、自分の強みと弱みを分析し、次のいくつかのプログラミング言語を上場されました。
C
- Cは、端末の開発者のためのサポートです。
- フクシアプラットフォームソースツリーでは、新たに使用がCに推奨され、そして唯一の以下の分野での使用が承認されています。
- カーネルを含む基本的なプログラミングシステムについては、
- 共有ライブラリおよびその他のシステムコンポーネントABIの安定したインタフェースを定義するために使用され
C ++
- C ++は、端末の開発者のためにサポートされています。
- 全体フクシアプラットフォームソースツリーでC ++を使用することを承認しました。
ダーツ
- ダートの開発者は非ドライバーのための端末のためにサポートされています。
- ダートは、ユーザーインターフェイスのために承認され、中フクシアプラットフォームソースツリーに無期限に実行されます。
さび
- ターミナルの開発者は、錆の使用をサポートしていません。
- 加算ジルコンカーネルでは、錆が全体フクシアプラットフォームソースツリーでの使用が承認されています。
ゴー
- ネットワークスタックの移行はコストの多くを必要とするため移動は、唯一のウェブテクノロジ・スタックでの使用が承認されています。時間は、ネットワークスタック承認された言語に移行する必要があり、許可しました。
- 言語の承認をターゲットデバイス上のソフトウェアの生産のために他のすべてのコードフクシアGo]を移行する必要があります。
要約すると、Goはフクシア生態学におけるいくらかの損失であってもよいし、それは冒頭で自分の欠点を文書化することは注目に値します。
- 以下のための他のメモリ管理技術よりも多くのリソースを取るガベージコレクションメモリを管理するために、
- 巨大なランタイム環境
- フクシアプラットフォームソースツリーは、移動の使用で実装経験の負の側面を持っています。囲碁システムコンポーネントに組み込まれた同様の構成要素フクシアプロジェクトの使用に比べてより多くのビルドC ++や錆にメモリとカーネルリソースを消費
- ツールチェーンは、大きなバイナリファイルを生成します
懸念は、文書がフクシアは対応していませんでしたということであるPythonのためにそのサポートを確認しています。しかし、Pythonののサポートについての詳細は、言語ページの詳細をサポートしていませんでした、唯一のハードル TODO、それは準備ができていないはずです。
一方、約持っていたサポートJavaScriptの噂、それは証明することはできないようです。