しくみについて学習する
自分のコードがどのように機能するかを理解するには、一歩下がって、プログラミング言語とは何かについて考える必要があります。 コードによってどのようにしてコンピューターにコマンドが伝えられるかを考えます。
プログラミング言語とは
C# などのプログラミング言語を使うと、コンピューターで実行する命令を記述できます。各プログラミング言語には独自の構文がありますが、最初のプログラミング言語を習得してから、別のプログラミング言語を習得しようとすると、それらのすべてで多くの似た概念が共有されていることがすぐにわかります。 プログラミング言語のジョブは、人間が解読可能で理解可能な方法で意図を表せるようにすることです。 プログラミング言語で記述する命令は、"ソース コード" または単に "コード" と呼ばれます。 ソフトウェア開発者がコードを記述します。
この時点で、開発者はコードを更新して変更できますが、コンピューターはそのコードを理解できません。 最初に、コードをコンピューターが認識できる形式に "コンパイルする" 必要があります。
コンパイルとは
コンパイラと呼ばれる特殊なプログラムにより、ソース コードはコンピューターの中央処理装置 (CPU) で実行できる別の形式に変換されます。 前のユニットで緑の [実行] ボタンを使用したときに、あなたが記述したコードは最初にコンパイルされてから実行されました。
コードをコンパイルする必要があるのはなぜでしょうか。 ほとんどのプログラミング言語は、最初は暗号のように見えますが、コンピューターの ''優先'' 言語よりも簡単に理解できます。 CPU は、数千または数百万の小さなスイッチをオンまたはオフにすることで表される命令を理解します。 コンパイラは、人間が解読可能な命令をコンピューターが理解可能な一連の命令に変換することで、この 2 つの世界を橋渡しします。
構文とは
C# コードを記述するためのルールは、構文と呼ばれます。 人間の言語に句読点や構文に関するルールがあるように、コンピューター プログラミング言語にもルールがあります。 これらのルールでは、C# のキーワードと演算子、およびそれらを組み合わせてプログラムを形成する方法を定義します。
.NET エディターにコードを書き込んだときに、単語やシンボルごとに色が微妙に異なっていることにお気づきになったかもしれません。 構文の強調表示は、C# の構文規則に準拠していないコードの誤りを簡単に見つけるために使用できる便利な機能です。
コードはどのように機能したか
記述した次のコード行に注目してみましょう。
Console.WriteLine("Hello World!");
コードを実行したときに、メッセージ Hello World!
が出力コンソールに出力されました。 C# コードでは、語句が二重引用符で囲まれている場合、それはリテラル文字列と呼ばれます。 つまり、H
、e
、l
、l
、o
などの文字を文字どおり出力に送信しました。
Console
の部分は、クラスと呼ばれます。 クラスはメソッドを "所有" します。つまり、メソッドはクラスの内部に存在しています。 メソッドにアクセスするには、それがどのクラスに入っているかを把握している必要があります。 ここでは、クラスをオブジェクトを表す方法と考えてください。 この場合、出力コンソールで動作するすべてのメソッドは Console
クラス内に定義されます。
また、クラス名 Console
とメソッド名 WriteLine()
を分離するドット (ピリオド) もあります。 ピリオドはメンバー アクセス演算子です。 つまり、ドットはクラスからそのメソッドのいずれか 1 つに "移動" する方法です。
WriteLine()
の部分は、メソッドと呼ばれます。 メソッドは、その後に一連のかっこがあるため、いつでも見つけることができます。 各メソッドには 1 つのジョブがあります。 WriteLine()
メソッドのジョブは、出力コンソールにデータ行を書き込むことです。 出力されるデータは、開始かっこと終了かっこに囲まれ、入力パラメーターとして送信されます。 一部のメソッドでは入力パラメーターが必要ですが、それ以外では必要ありません。 ただし、メソッドを呼び出す場合は、そのメソッドの名前の後に必ずかっこを使用する必要があります。 かっこは、メソッド呼び出し演算子と呼ばれます。
最後に、セミコロンは "ステートメントの終了演算子" です。 ステートメントは、C# の完全な命令です。 セミコロンは、コマンドの入力が完了したことをコンパイラに伝えます。
これらのすべてのアイデアと用語がわからなくても心配しないでください。 ここで、メッセージを出力コンソールに出力する場合に、覚えておく必要があることは次のとおりです。
Console.WriteLine("Your message here");
を使用しますConsole
、Write
、Line
を大文字にする- C# では特殊な役割があるため、適切な "句読点" を使用する
- 間違った場合は、それを見つけて修正し、再実行する
ヒント
特定のキー コマンドを覚えるまで、自分用のチート シートを作成します。
実行フローを理解する
実行フローを理解することが重要です。 つまり、コード命令は、実行する命令がなくなるまで、一度に 1 行ずつ順番に実行されました。 命令によっては、続行する前に CPU が待機する必要があります。 その他の命令は、実行フローを変更するために使用できます。
では、学習した内容をテストしてみましょう。 モジュールごとに単純な課題を取り上げており、行き詰まった場合には、解決策が用意されています。 次のユニットでは、自分で C# を少し記述することができます。