2022年3月1日こんにちは、MSKです。最近比較的新しいプログラミング言語であるRustの人気が出てきています。仕事で使っているチップも今まではC言語のみ対応でしたが、近いうちにRustにも対応するといったアナウンスがでるなど組み込み系の仕事でも使用されるようになってきています。World」を表示したいと思います。スポンサーリンクRustって何?Mozillaが支援するプログラミング言語です。C/C++に匹敵する実行速度やメモリ管理を持つプログラミング言語で、C/C++の代わりとなることが期待されています。Rustを採用している事例としてはDropBoxやドワンゴがあります。Surveyで「最も愛されているプログラミング言語」で1位を獲得するなど、今注目の言語になっています。Rustの特徴は以下になります。型安全性の保障モダンな文法が取り入れられている特徴を今回は簡単に紹介したいと思います。(別の記事で詳しく書きたいと思います)実行速度がトップクラス(C/C++と同じレベルの速度)上にも書いた通り、C/C++に匹敵する実行速度を持っています。ある調査によるとRustはJavaの2倍以上、Pythonの約30倍速いことが分かっています。静的型付け言語Rustは静的型付け言語になります。静的型付け言語とは変数や関数の引数などの型をコンパイル時に決定する言語です。逆にPythonやRubyは動的型付け言語と呼ばれる言語になっています。動的型付け言語は実行時に変数の型をチェックします。静的型付け言語では実行時に型チェックをやる必要がないため、動的型付け言語に比べて処理が速くなりやすいという特徴を持っています。NULL安全NULL安全とは、「NULLが原因でプログラムがクラッシュしないための仕組み」です。Rustでは値があるかどうか分からないことを表す型としてオプション型というものがあります。オプション型は値があるかどうかが分からないという型なので、値を取り出すときに値があるかどうかのチェックを強要されます。これにより値がないことのエラーを防ぐことができます。型安全性の保障Rustはコンパイル時に型付けに失敗した場合はエラーを出してくれます。数値と文字列の加算を行うことや、返り値がある関数で返り値を返していない関数に対してエラーを出してくれます。C言語では返り値がある関数で返り値を返していなくてもコンパイルエラーとはならずに、実行することができます。この場合は何が起こるか分からないので危険だと言えます。Rustではこのような危険をコンパイル時点で防いでくれる仕組みがあります。モダンな文法が取り入れられているRustは比較的新しい言語であり、今も開発が継続している言語ですので先行しているプログラミング言語の良いところを取り込んでいけるという強みがあります。モダンな仕組みとして以下が含まれています。型推論パターンマッチNULL安全ジェネリクスとトレイトクロージャ開発環境を整えよう公式ページにインストールの方法が詳しく書かれていますので、その通りに進めるとインストールが完了します。インストールが完了しましたら、次のコマンドをコマンドライン上から打ってください。バージョンが返ってきましたら、インストール成功です。World」を表示するプログラムを作成します。プロジェクトを作成するためにコマンドライン上で次のように打ちます。hello_worldこのコマンドによりプロジェクトのフォルダが作られていると思います。hello_worldフォルダの中のsrcフォルダ内のmain.rsがソースコードを記述するファイルになります。初期の段階で次のように表示されていると思います。world!」と書かれているのでこれを使わせてもらいます。コマンラインでhello_world直下まで移動して、次のようにコマンドラインで打ち込んでbuildを行います。build1秒ほどでbuildが完了すると思います。最後にbuildしたプログラムを実行します。world!」と表示されたと思います。まとめプログラミング言語Rustについての紹介をしてきました。Rustの特徴としては「実行速度がトップクラス(C/C++と同じレベルの速度)、静的型付け言語、NULL安全、型安全性の保障、モダンな文法が取り入れられている」でした。C/C++の代替言語として、人気も高くなってきている言語ですので、僕としても注目して学習しています。人気も高く将来性もあるかなと思えるので、興味のある人はぜひRustを学習してみてください。以上、「Rustをインストールして使ってみよう!」でした。最後まで読んでいただき、ありがとうございます。MEMSK九州在住の組み込み系エンジニアです。2児の父親でもあります。数学やプログラミングが趣味です。最近RustとReact、結び目理論と曲面結び目理論にはまっています。MSKもちのき研究所KaTexを使ってみよう!Pythonをインストールして使ってみよう!組み込み系エンジニアMSKソフトウェア関連の技術が好きな30代男性です。最近は、Webアプリ開発にチャレンジ中。