連載 [第1回] :
「TAURI」+「Rust」ではじめるデスクトップアプリ開発「TAURI」をはじめる前に -「Rust」の基礎と開発環境の構築
2023年9月1日(金)
本連載では、オープンソースのデスクトップRustアプリフレームワーク「TAURI」について解説していきます。第1回の今回は「Rust」の概要やインストール方法、ビルドと実行方法を紹介します。
Rustで開発をする作業手順の説明
RustをVisual Studio Codeで開発するには、図13のように大体1〜3の作業を繰り返します。
- ファイル階層構造の「エクスプローラー」ペインで見たいファイルを開きます。
- 「編集」ペインでソースコードをコーディングします。
- 「ターミナル」ペインで「cargo」などのコマンドを実行します。
Rustのサンプルコードを実行してみる
それでは、Rustでプログラミングを始めていきましょう。まずはプロジェクトの作成と同時に作られるデフォルトのサンプルを実行してみます。
- まず「ドキュメント」フォルダーなどに「Rust」というフォルダーを作成します。Visual Studio Codeを起動して図14のように「ファイル」→「フォルダーを開く」メニューを実行し、ファイルダイアログで作成した「Rust」フォルダーを選び[フォルダーを選択]ボタンをクリックします。すると、開いたフォルダーがカレントディレクトリになります。
- 図15のように「表示」→「ターミナル」メニューで「ターミナル」を開きます。ターミナルは、Windowsでいう「コマンドプロンプト」のようなものです。次のコマンドを実行して、新しいRustプロジェクトを作成します。「cargo」はプロジェクトを管理したりビルドしたりするマネジメントシステムのようなものです。「new」で「src-tauri」という名前のプロジェクトを新規作成します。このようなプロジェクト名を付けたのは、次回のTAURIでRustのプロジェクトが格納されるフォルダー名と同じにして理解しやすくしようと思ったからです。
$ cargo new src-tauri
- また、1のように「ファイル」→「フォルダーを開く」メニューで、今度は新規作成された「src-tauri」フォルダーを開きます。
- ターミナルで次のコマンドを実行します。「cargo run」はプロジェクトを「デバッグ」ビルドして成功すれば実行します。
$ cargo run
- ここで実行されたプログラムは「ターミナル」に「Hello, world!」と表示されるだけのお決まりのサンプルです。
PS C:¥Users¥Vexil¥Documents¥Rust¥src-tauri > cargo run Compiling src-tauri v0.1.0 (C:¥Users¥Vexil¥Documents¥Rust¥src-tauri) Finished dev [unoptimized + debuginfo] target(s) in 0.92s Running `target¥debug¥src-tauri.exe` Hello, world!
- この他にもリリースビルドするには、次のコマンドを使います。
$ cargo build --release
これで、ひと通りプロジェクトの実行方法を説明しました。
Rustのサンプルプロジェクトを見ていこう
「src-tauri」プロジェクトの構成図は次のようになります。「debug」フォルダーと「release」フォルダーにあるファイルやフォルダーについては割愛します。
src-tauriフォルダー(プロジェクト) ┣srcフォルダー(ソースが入っている) ┃┗main.rs(メインのrsファイル) ┣targetフォルダー(ビルドしたファイルやフォルダーが入る) ┃┣debugフォルダー(デバッグビルドしたファイルやフォルダーが入る) ┃┣releaseフォルダー(リリースビルドしたファイルやフォルダーが入る) ┃┣.rustc_info.json ┃┗CACHEDIR.TAG ┣.gitignore(Gitで無視するファイルやフォルダーを記述) ┣Cargo.lock(このプロジェクトで使われる情報やファイルなどを列挙) ┗Cargo.toml(このプロジェクトの設定ファイル)
サンプルコードを見ていく
「main.rs」ファイルには、次のサンプルコードだけが書かれています。ビルドして実行すると、最初に「main.rs」ファイルが実行されます。たった3行ですが、サンプルコードの中身を見てみましょう。
当たり前のことですが、rsファイルをコーディングして書き換えた場合は「ファイル」→「保存」メニューで上書き保存することを忘れないようにしてください。
fn main() { println!("Hello, world!"); }
「fn」は「関数」を宣言します。「main」が関数名です。main関数は、src-tauri.exeが実行されると最初に呼ばれる関数です。「{」〜「}」までがmain関数の範囲です。main関数が呼ばれたら、この範囲が上から順に実行されます。
「println!」はターミナルに1行の文字列を表示する「マクロ」です。マクロは関数に似ていますが、関数やマクロなどの文法については後の回で解説します。
おわりに
連載第1回の今回は、簡単にRustとTAURIについて解説し、Rustの開発環境を構築しました。Rustの実行方法やプロジェクトの作成については次回以降も行なっていくので、操作に慣れておくようにしてください。
連載バックナンバー
Think ITメルマガ会員登録受付中
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。
全文検索エンジンによるおすすめ記事
- 「TAURI」の基礎知識を押さえ、簡単なTAURIアプリ開発を体験してみよう
- 「TAURI」にも必要な「Rust」の「クレート」を使う
- 「TAURI」で「ピアノ音楽」アプリを作ろう
- 「TAURI」で気象庁の「CSVデータ」を解析する
- 「TAURI」と「Rust」の「Option型」と「Result型」を使いこなそう
- 「TAURI」と「Rust」の「テスト」機能を試してみよう
- Rustのエコシステムの拡がりを感じるデスクトップアプリのためのツールキットTauriを紹介
- 「TAURI」で「画像ビューア」のサンプルアプリを作ろう
- 「Ace」を使って「TAURI」で「テキストエディタ」アプリを作ろう
- 「TAURI」でExcelのデータを読み書きしてWebページに表示してみよう