Hello, World
最も単純な Rust プログラムである、古典的な Hello World プログラムから始めましょう:
// Copyright 2024 Google LLC // SPDX-License-Identifier: Apache-2.0 fn main() { println!("Hello 🌍!"); }
ここでわかること:
- 関数は
fnで定義します。 main関数はプログラムのエントリポイントです。- ブロックは、C や C++ と同様に波かっこで区切ります。
- 文は
;で終わります。 printlnはマクロであり、呼び出し時の!で示されます。- Rust の文字列は UTF-8 でエンコードされており、任意の Unicode 文字を含められます。
このスライドは、受講者が Rust のコードに慣れ親しめるようにすることを目的としています。これから の 4 日間で大量のコードを見ることになるので、まずは馴染みのある小さなものから始めます。
重要なポイント:
-
Rust は、C/C++/Java の系譜にある他の言語によく似ています。命令型の言語であり、 絶対に必要でない限り物事を作り直そうとはしません。
-
Rust はモダンで、Unicode を完全にサポートしています。
-
Rust では、可変個の引数を取りたい場面でマクロを使います(関数の オーバーロードはありません)。
-
println!がマクロなのは、通常の関数では実現できない、書式文字列に応じた任意個の 引数を扱う必要があるためです。それ以外の点では、通常の関数のように扱えます。 -
Rust はマルチパラダイムです。たとえば、強力な オブジェクト指向プログラミング機能 を備えており、また、関数型言語ではないものの、さまざまな 関数型の概念 を取り入れています。