基礎から学ぶC#入門 90日コース | C#基本文法 - Day 1:C#とは何か

C# 90日で身につけるC#
スポンサーリンク
スポンサーリンク

Day 1 のゴールと全体イメージ

この Day 1 では、「C#とは何か」「何ができるのか」「どうやって動かすのか」を、 プログラミング初心者向けに一歩ずつ丁寧に整理していきます。

いきなり難しいコードを書くのではなく、 まずは「言語としての C#」「その土台である .NET」「作れるアプリの種類」「プロジェクトやソリューションの意味」 そして「コンソールアプリを実際に動かしてみる」という流れで、 C#の世界に自然に入っていけるように構成しています。

C#とは何か

C#は「マイクロソフトが作ったモダンなプログラミング言語」です

C#(シーシャープ)は、マイクロソフトが開発したプログラミング言語です。 読み方は「シーシャープ」で、音楽記号の「♯」から来ています。

C#は次のような特徴を持つ言語です。

オブジェクト指向言語である 型がしっかりしていて安全性が高い Windows だけでなく、Linux や macOS、スマホ、Web など幅広く動かせる ゲーム開発から業務システムまで、用途が非常に広い

初心者にとって重要なのは、 「C#はプロの現場でも使われている本格的な言語だが、学びやすい設計になっている」 という点です。

.NETとは何か

.NETは「C#が動くための土台(プラットフォーム)」です

C#の話をするときに必ず出てくるのが .NET(ドットネット) です。 .NET は「C#などの言語で書かれたプログラムを動かすための仕組みの集合」です。

イメージとしては、

C# → 言語 .NET → 言語が乗る土台・エンジン

という関係です。

C#で書いたコードは、最終的に .NET のランタイム(実行環境)によって動きます。 このおかげで、同じ C# のコードが Windows でも Linux でも動かせるようになっています。

C#でできること

C#は「何でも屋」に近い言語です

C#でできることは非常に多く、代表的なものだけでも次のようなものがあります。

コンソールアプリ(黒い画面のテキストベースアプリ) Webアプリ(ブラウザで動くアプリ) デスクトップアプリ(Windows のウィンドウアプリ) ゲーム開発(Unity など)

ここでは、それぞれを初心者向けにイメージしやすく説明していきます。

コンソールアプリとは

一番シンプルな「文字だけのアプリ」です

コンソールアプリは、黒い画面(または白い画面)に文字だけが表示されるタイプのアプリです。 最初に学ぶには最適で、

「入力を受け取る」 「計算する」 「結果を表示する」

というプログラムの基本的な流れを理解するのに向いています。

C#の入門では、まずこのコンソールアプリから始めることがほとんどです。

Webアプリとは

ブラウザで動くアプリを C#で作ることができます

C#は ASP.NET などのフレームワークを使うことで、 Webブラウザで動くアプリケーションを作ることができます。

ログイン画面 商品一覧 注文フォーム

といった、いわゆる「Webサービス」を C#で構築できます。

Day 1 の段階ではコードまでは踏み込みませんが、 「C#はWebも作れる」というイメージを持っておくと、 学ぶモチベーションが上がりやすくなります。

デスクトップアプリとは

Windows のウィンドウアプリも C#の得意分野です

C#は、Windows のデスクトップアプリ(ウィンドウが開くタイプのアプリ)を作ることも得意です。

ボタン テキストボックス リスト表示

などを持つ GUI(グラフィカルユーザーインターフェース)アプリを、 WPF や WinForms といった技術を使って作ることができます。

業務システムや社内ツールなどで、今も多く使われている分野です。

ゲーム開発とは

Unity と組み合わせることで本格的なゲームが作れます

C#はゲーム開発の世界でも非常に有名です。 特に Unity というゲームエンジンでは、 スクリプト言語として C#が採用されています。

2Dゲーム 3Dゲーム スマホゲーム VRゲーム

など、多くのタイトルが C#で書かれています。

「いつかゲームを作りたい」という方にとって、 C#はとても魅力的な選択肢になります。

プロジェクトとは

プロジェクトは「アプリのひとまとまり」です

C#でアプリを作るときは、 開発環境(Visual Studio や Visual Studio Code など)で プロジェクト を作成します。

プロジェクトとは、

ソースコードファイル 設定ファイル 依存ライブラリ

などをひとまとめにした「アプリの単位」です。

例えば「メモ帳アプリ」を作るときは、 メモ帳アプリ用のプロジェクトを1つ作る、というイメージです。

ソリューションとは

ソリューションは「プロジェクトをまとめる入れ物」です

ソリューションは、複数のプロジェクトをまとめるための単位です。

例えば、

Webアプリ本体のプロジェクト API用のプロジェクト テスト用のプロジェクト

などを1つのソリューションにまとめて管理できます。

初心者の段階では、 「ソリューションの中にプロジェクトが入っている」 というイメージだけ持っておけば十分です。

プログラムの実行方法(コンソールアプリ編)

まずは「Hello, World」を動かしてみる

ここからは、実際に C#のコンソールアプリを動かすイメージを持てるように、 基本的なコード例を紹介します。

以下は、最も有名な「Hello, World」を表示する C#のコンソールアプリです。

// C# のコンソールアプリの基本テンプレート
using System;  // Console クラスなどを使うための宣言

class Program   // プログラムのメインクラス
{
    // プログラムの入口となるメソッド
    static void Main(string[] args)
    {
        // 画面に文字を表示する
        Console.WriteLine("Hello, World!");

        // Enterキーを押すまで待つ(画面がすぐ閉じないようにするため)
        Console.ReadLine();
    }
}
C#

このコードをコンソールアプリとして実行すると、 画面に Hello, World! と表示されます。

コードの重要ポイントを深掘りする

using System; とは何か

using System; は、 C#の標準ライブラリの中でも基本的な機能をまとめた System 名前空間 を使うための宣言です。

Console クラスは System 名前空間の中にあるため、 これを書いておくことで Console.WriteLine が使えるようになります。

初心者のうちは「おまじない」として覚えておいて構いませんが、 「ライブラリを使うための宣言」という意識を持っておくと、 後々理解が深まりやすくなります。

class Program とは何か

class Program は、 C#の「クラス」という仕組みを使って、 プログラムのまとまりを表現している部分です。

ここでは、

Program という名前のクラスの中に Main というメソッド(関数)がある

という構造になっています。

Day 1 の段階では、 「クラスの中に Main がある」というイメージだけで十分です。

static void Main(string[] args) とは何か

Main メソッドは、 C#のコンソールアプリにおける「プログラムの入口」です。

プログラムを実行すると、 必ずこの Main メソッドから処理が始まります。

static void Main(string[] args) の意味を分解すると、

static → クラスから直接呼び出されるメソッド void → 戻り値がない(何も返さない) Main → メソッド名(入口として特別扱いされる) string[] args → コマンドライン引数(今回は気にしなくてよい)

となります。

初心者のうちは、 「Main はプログラムのスタート地点」 と覚えておけば十分です。

Console.WriteLine とは何か

Console.WriteLine("Hello, World!"); は、 コンソール画面に文字を表示するための命令です。

Console → コンソール画面を扱うクラス WriteLine → 1行分の文字を表示するメソッド

という関係になっています。

この1行があるだけで、 「プログラムが何かをユーザーに伝える」ことができます。

Console.ReadLine とは何か

Console.ReadLine(); は、 ユーザーが Enterキーを押すまで待つための命令です。

コンソールアプリは、 実行後すぐに終了して画面が閉じてしまうことがあるため、 この1行を入れておくことで、 表示内容を確認する時間を確保できます。

また、ユーザーから文字入力を受け取るときにも使われます。

まとめ:Day 1 で押さえておきたいこと

Day 1 では、次のポイントをステップバイステップで確認しました。

C#とは何か → マイクロソフトが作ったモダンな言語 .NETとは何か → C#が動くための土台 C#でできること → コンソール、Web、デスクトップ、ゲームなど幅広い コンソールアプリ → 最初に学ぶシンプルなテキストアプリ プロジェクト → アプリのひとまとまり ソリューション → プロジェクトをまとめる入れ物 プログラムの実行方法 → Main から始まり、Console.WriteLine で表示する

ここまで理解できていれば、 「C#の世界に入る準備」は十分整っています。

タイトルとURLをコピーしました