特集/連載
「Rust」がプログラマーに“大人気”なのになぜか敬遠される理由:GoとRustを比較する【第5回】
プログラミング言語「Rust」は洗練された仕組みを持つ一方、それが開発者に幾つかの困難を押し付けることにつながっている。そうした困難の正体とは。
「Rust」はさまざまな用途で使えるプログラミング言語である一方、習得は簡単ではないとの見方がある。それはなぜなのか。具体的にどのような障壁があるのか。
プログラマーを遠ざける「Rust」の“ややこしさ”
併せて読みたいお薦め記事
連載:GoとRustを比較する
- 第1回:CでもC++でもなくプログラミング言語「Go」を使いたくなる“あの良さ”とは?
- 第2回:「Go」に期待し過ぎたプログラマーが落胆する“完璧じゃない部分”
- 第3回:CでもC++でもなく「Rust」を使いたくなる“なるほどの理由”
- 第4回:「Rust」にプログラマーが安心感を抱く“根本的な理由”
GoとRustの魅力
Rustでは、変数を参照できる範囲である「ライフタイム」を指定することで、プログラムが変数を正しく参照しやすくすることができる。ライフタイムは、プログラムによるメモリ内容の破壊を防ぐ「メモリ安全性」の確保に役立つ。ただしライフタイムを明記すると、構文が複雑になる傾向がある。
不要なメモリを自動的に解放する「ガベージコレクション」は、Rustでは使用できない。これはRustを習得する上でのハードルとなり得る。
ライブラリ(プログラム部品群)が成熟していないことも、Rust開発者を悩ませる。Rustには強力な開発者コミュニティーがあるが、開発に関するサポートは十分とは言い難い。ライブラリやサポートが充実するまで、Rustの使用を待つ選択肢もある。
さまざまな課題があるにもかかわらず、Rustは人気だ。プログラマー向けQ&Aサイト「Stack Overflow」が2021年5月〜6月に8万3439人に対して実施した調査では、回答者の86.98%がRustを「最も好きなプログラミング言語」に選んだ。
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.