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 はマルチパラダイムです。たとえば、強力な オブジェクト指向プログラミング機能 を備えており、また、関数型言語ではないものの、さまざまな 関数型の概念 を取り入れています。