Rustを信頼しているか?確かにそうだが、より良いツールとより幅広い利用法を望んでいると開発者は言う

Table of Contents

Rustを信頼しているか?確かにそうだが、より良いツールとより幅広い利用法を望んでいると開発者は言う

同言語の公式調査によると、「Rustの使用を妨げている最大の問題は採用だ」とのことで、一部の開発者は生産性の向上に苦労し、限られたIDEサポートに阻まれている。

StackOverflowの調査によると、Rustは「最も愛されている」言語であり、4年連続でその地位を維持しています。しかし、今回の新たな調査では、Rust開発者の5人に1人がこの言語で生産性を感じていないことが示されています。採用の障壁として挙げられた主な理由は、より良いトレーニングとドキュメントの必要性、ライブラリの改善、そしてIDEとの統合強化でした。

「中小企業にとって、生産性が上がるまでに4~6週間でも要求は多すぎる」と、ある回答者は述べた。

この調査は2019年12月に実施され、3,997件の回答を得ました。これは2018年の調査より約2,000件少ない数字です。回答者のうち、27.6%がRustを毎日使用しており、さらに40.9%が少なくとも週に1回は使用しています。Rust開発者の最も一般的な役割は、バックエンドWeb開発であり、次いで分散システムと組み込みデバイスとなっています。

Rustユーザーの55%はLinux、24%はWindows、23%はmacOSで開発を行っています。IDEとしてはVisual Studio Codeが最も多く、シェアは34.9%です。次いでVim(23.6%)、IntelliJ(21.1%)が続いています。IntelliJはIDEA、CLion、その他のIntelliJ製品用のオープンソースプラグインです。対象となるプラットフォームは、Linux(36.9%)、Windows(16.3%)、macOS(14.7%)、WebAssembly(14.4%)です。

開発者たちは、Rust の主要機能である非同期 I/O の改善に非常に満足していると表明しましたが、採用レベル、コンパイル時間、IDE エクスペリエンス、ライブラリ サポート、ドキュメント、ツール サポートなど、他の領域では「若干の改善」のみを挙げた人がほとんどでした。

なぜRustの学習は比較的難しいのでしょうか?2018年の調査では、ユーザーに様々なトピックの難易度を評価してもらいました。その結果、所有権と借用、ライフタイム、マクロ、アンセーフコードが特に難しいと感じているユーザーが多いことがわかりました。

ユーザーはRustの概念の一部を理解するのが難しいと評価している

ユーザーはRustの概念の一部を理解するのが難しいと評価している

しかし、熟練した開発者たちの熱意にもかかわらず、Rustの普及は依然として限定的であることは明らかだ。Redmonkのアナリスト、スティーブン・オグレイディ氏は1月に、「今後、より多くのコアインフラプロジェクトの基盤として使われるべきだと多くの人が主張しているこの輝かしい言語は、プログラミング言語ランキングで横ばいのままだ」と指摘した。「そこで問題となるのは、RustがGoとは技術的に差別化されている点だ。たとえ学習曲線がやや長いとしても、それが現代のインフラワークロードにおいて、現在の最も強力なライバルを凌駕するのに十分かどうかだ」とオグレイディ氏は述べた。

Rust支持者にとっての不満は、採用の少なさがさらなる利用を阻む最大の要因として挙げられていることです。この言語がブレイクするには、大規模プロジェクトに採用される必要があるでしょう。例えば、Androidの後継候補となるGoogle Fuchsiaでしょうか?残念ながら、公式プログラミングポリシーでは、メモリ安全性と非同期機能を称賛しながらも、「現在、エンド開発者はRustを使用していません。Rustは広く使用されている言語ではありません。言語の特性はまだ十分に理解されておらず、特異な言語設計ポイント(例えば、借用チェッカー)を採用し、比較的短期間しか存在していません」と述べています。このことから、「Rustはエンド開発者向けにサポートされていない」という結論が導き出されます。Rustはカーネルを除くFuchsiaプラットフォームソースツリー全体で「使用が承認されている」にもかかわらずです。Googleがエンド開発者と呼ぶのは、コアソースコード以外でプラットフォーム向けのソフトウェアを開発する人々です。エンド開発者に最も好まれる言語は、C、C++、またはDartです。

Rust は愛され、その言語設計は広く賞賛されていますが、そのメリットに見合うほど広く使用されているわけではありません。®

Discover More