C#の基礎

C#は、Microsoftが開発したモダンで柔軟なプログラミング言語であり、デスクトップアプリケーション、Webアプリケーション、モバイルアプリケーション、さらにはゲーム開発に至るまで、幅広い分野で利用されています。この資料では、C#を初めて学ぶ方を対象に、言語の基礎をわかりやすく説明します。具体的なコード例とその解説を通じて、プログラムの基本構造、データ型、条件分岐、ループ、メソッド、そしてオブジェクト指向の基本概念を段階的に学ぶことができます。

C#の学習を始めるにあたって、この資料が参考となり、実践的なスキルを身につける一助となれば幸いです。それでは、C#の世界に足を踏み入れましょう!

プログラムの基本構造

using System;

class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("Hello, World!");
    }
}
  • using System;: 標準ライブラリをインポートする。この行によって、C#で標準的に提供されている機能を利用できるようになる。
  • Main: プログラムのエントリーポイント。このメソッドが最初に実行される。
  • Console.WriteLine: コンソールにメッセージを出力する。これにより、ユーザーに結果を表示したり、デバッグ情報を提供する。

変数とデータ型

C#にはさまざまなデータ型が存在し、それぞれ特定の用途に適しています。

説明
int数字型の整数int number = 10;
double浮動小数点型double pi = 3.14;
string文字列型string name = "John";
bool真偽値型bool isActive = true;

これらの型を適切に選択することで、プログラムの効率を高めることができます。


演算子

演算子は、値を操作したり、比較したりするために使用されます。

種類演算子説明
算術演算子+, -, *, /a + b加算、減算、乗算、除算
比較演算子==, !=a == b等値、不等値
論理演算子&&, ||, !a && bAND、OR、NOT
代入演算子=a = b代入

これらの演算子を組み合わせることで、より複雑な条件や計算を実現できます。


条件分岐

プログラムの流れを制御するために条件分岐を使用します。

if-else

int number = 10;
if (number > 5)
{
    Console.WriteLine("5より大きい");
}
else
{
    Console.WriteLine("5以下");
}

上記のコードでは、numberが5より大きい場合とそうでない場合で、異なるメッセージが出力されます。

switch

int day = 3;
switch (day)
{
    case 1:
        Console.WriteLine("月曜日");
        break;
    case 2:
        Console.WriteLine("火曜日");
        break;
    default:
        Console.WriteLine("他の日");
        break;
}

switch文は、複数の条件に基づいて処理を分岐させるのに便利です。


ループ

繰り返し処理を行うための構造です。

forループ

for (int i = 0; i < 5; i++)
{
    Console.WriteLine(i);
}

forループは、開始値、終了条件、増分を指定して繰り返し処理を行います。

whileループ

int i = 0;
while (i < 5)
{
    Console.WriteLine(i);
    i++;
}

whileループは、指定された条件が真である間、繰り返し処理を実行します。

foreachループ

string[] fruits = { "Apple", "Banana", "Cherry" };
foreach (string fruit in fruits)
{
    Console.WriteLine(fruit);
}

foreachループは、配列やコレクションの要素を順に処理するために使用されます。


メソッド

メソッドはコードを整理し、再利用可能にするための単位です。

class Program
{
    static void Main(string[] args)
    {
        int result = Add(5, 3);
        Console.WriteLine(result);
    }

    static int Add(int a, int b)
    {
        return a + b;
    }
}

この例では、Addというメソッドを使用して、二つの整数を加算しています。


クラスとオブジェクト

クラスはオブジェクトの設計図であり、オブジェクトはクラスのインスタンスです。

class Person
{
    public string Name;
    public int Age;

    public void Introduce()
    {
        Console.WriteLine($"Name: {Name}, Age: {Age}");
    }
}

class Program
{
    static void Main(string[] args)
    {
        Person person = new Person();
        person.Name = "John";
        person.Age = 30;
        person.Introduce();
    }
}

このコードでは、Personクラスを定義し、そのインスタンスを作成しています。クラスのメンバーとして、フィールド(NameAge)とメソッド(Introduce)があります。


次のステップ

C#の基礎を理解した後、以下のトピックを学ぶとスキルをさらに向上させることができます。

  1. オブジェクト指向: 継承、ポリモーフィズム、インターフェースの理解。
  2. コレクション: List<T>Dictionary<K, V>を使って効率的にデータを管理する。
  3. 非同期処理: async/awaitを活用して、パフォーマンスの高いアプリケーションを構築する。
  4. エラー処理: try-catch構文を使った例外処理の実装。
  5. ファイル操作: ファイルの読み書きを学び、永続的なデータ管理を実現する。
  6. テスト駆動開発 (TDD): ユニットテストを用いて、コードの品質を高める方法を学ぶ。

これらを習得することで、より複雑で高度なアプリケーションの開発が可能になります。

C#

Posted by hidepon