C# | 2週間で身につくアプリを作りながら学ぶC#の基本 - 1日目

C# C#
スポンサーリンク

この2週間コースと「1日目」のゴール

1日目のテーマは、難しいことを全部横に置いて

「C# のコードを自分の手で書いて、コンソールアプリを1つ動かす」

ここまで行くことです。

今日のゴールは次の3つです。

  • C# をどこで書いて、どうやって実行するかが分かる
  • 「Hello World」ではなく、ちょっとだけ“自分ごと”な自己紹介アプリを作る
  • C# の基本構造(Main メソッド・Console.WriteLine・変数)をざっくり理解する

完璧に覚える必要はありません。
「なんとなく見たことある」「あ、これ前やったやつだ」が増えれば十分です。


開発環境を決める

いちばんシンプルな選択肢

C# を書く場所として、初心者におすすめなのは次のどちらかです。

  • Visual Studio(Community 版)
  • VS Code + .NET SDK

ここでは説明をシンプルにするために「.NET SDK を入れて、コマンドでプロジェクトを作る」流れで話します。
もしすでに Visual Studio を入れているなら、「コンソールアプリ(C#)」の新規プロジェクトを作っても同じです。

プロジェクトを作るイメージ

C# では、1つのアプリは「プロジェクト」という単位で管理されます。
フォルダの中に

  • ソースコード(.cs ファイル)
  • 設定ファイル
  • ビルドされた実行ファイル

などがまとまって入るイメージです。

コマンドライン(ターミナル)で次のように打つと、新しいコンソールアプリが作れます。

dotnet new console -o MyFirstApp

MyFirstApp というフォルダができ、その中に Program.cs というファイルが入っています。
今日はこの Program.cs を編集していきます。


最初の C# プログラムを動かしてみる

既に入っているコードを実行してみる

MyFirstApp フォルダに移動して、次を実行します。

cd MyFirstApp
dotnet run

おそらくコンソールに

Hello, World!

と表示されるはずです。

これが「C# の最小コンソールアプリ」です。
まだ中身は分からなくて大丈夫。「C# はちゃんと動くんだな」と感じてくれれば OK。

Program.cs の中身を見てみる

Program.cs を開くと、だいたい次のようなコードが入っています(バージョンによって少し違います)。

Console.WriteLine("Hello, World!");
C#

あるいは、もう少し長い形かもしれません。

using System;

namespace MyFirstApp
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
        }
    }
}
C#

どちらでも本質は同じです。
C# の世界では「Main メソッドから処理が始まる」と覚えておいてください。


C# プログラムの「骨組み」をざっくり理解する

Main メソッドが「スタート地点」

長い方の書き方を例に、重要なところだけ抜き出して説明します。

static void Main(string[] args)
{
    Console.WriteLine("Hello, World!");
}
C#

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

  • staticvoidstring[] args は、今は「おまじない」と思って構いません
  • 大事なのは「Main という名前のメソッドがスタート地点」ということ

C# では「メソッド」という言葉をよく使いますが、
今は「処理のまとまり」「関数」とほぼ同じ意味だと思っておいて大丈夫です。

Console.WriteLine の意味を分解する

次の一行を、丁寧に分解してみます。

Console.WriteLine("Hello, World!");
C#
  • Console
    コンソール(黒い画面)に文字を出したり、入力を受け取ったりするための“道具箱”の名前
  • WriteLine
    その道具箱の中の「1 行表示する」機能の名前
  • ("Hello, World!")
    その機能に渡している「表示したい文字列」
  • ;
    「ここで 1 文が終わり」という印。C# ではとても大事。

つまり、「Console という道具箱の WriteLine という機能を使って、“Hello, World!” を表示している」ということです。


自己紹介コンソールアプリを作ってみる

表示するメッセージを自分仕様に変える

まずは Hello, World! を、自分の自己紹介に変えてみましょう。

Console.WriteLine("はじめまして。C# を勉強中です。");
Console.WriteLine("好きな食べ物はカレーです。");
Console.WriteLine("2週間でアプリを作れるようになるのが目標です。");
C#

dotnet run して、3 行のメッセージが表示されれば OK です。

ここで感じてほしいのは、

  • 同じ Console.WriteLine を何度も使える
  • 上から順番に実行される

という「プログラムの流れ」です。

変数を使って、少しだけ“プログラムっぽく”する

今度は、文字列をそのまま書くのではなく、「変数」に入れてから表示してみます。

string name = "Taro";
int age = 25;

Console.WriteLine("私の名前は " + name + " です。");
Console.WriteLine("年齢は " + age + " 歳です。");
C#

ここで新しく出てきたのが「変数」と「型」です。


変数と型をかみ砕いて理解する

変数は「ラベル付きの箱」

次の一行を見てください。

string name = "Taro";
C#

これをイメージで説明すると、

  • string → 「文字列を入れる箱ですよ」という種類(型)の宣言
  • name → 箱の名前
  • = → 「右側の値を左側の箱に入れる」という意味(代入)
  • "Taro" → 実際に箱に入れる中身(文字列)

C# では、「どんな種類の値を入れる箱か」を必ず宣言します。
これが「型付き言語」の特徴です。

よく使う基本の型

1日目で覚えるのは、この3つだけで十分です。

string name = "Taro";   // 文字列
int age = 25;           // 整数
double height = 1.75;   // 小数
C#
  • string → 文字列(文章・名前など)
  • int → 整数(年齢、個数など)
  • double → 小数(身長、重さなど)

「型を先に書いて、変数名を書いて、= で値を入れる」
このパターンに慣れていきましょう。

文字列と数値をつなげる

次のコードを見てください。

string name = "Taro";
int age = 25;

Console.WriteLine("名前: " + name);
Console.WriteLine("年齢: " + age + " 歳");
C#

"年齢: " + age + " 歳" の部分では、

  • 文字列 "年齢: "
  • 整数 age
  • 文字列 " 歳"

+ でつなげています。

C# では、文字列と他の値を + でつなげると、
他の値が自動的に文字列に変換されて、一つの長い文字列になります。


ユーザーから入力を受け取るミニアプリにする

Console.ReadLine で入力を受け取る

今度は、「プログラム側が勝手に自己紹介する」のではなく、
ユーザーに名前と年齢を入力してもらうアプリにしてみましょう。

Console.WriteLine("あなたの名前を入力してください:");
string name = Console.ReadLine();

Console.WriteLine("あなたの年齢を入力してください:");
string ageText = Console.ReadLine();

Console.WriteLine("こんにちは、" + name + " さん。");
Console.WriteLine("あなたは " + ageText + " 歳なんですね。");
C#

ここで新しく出てきたのが Console.ReadLine() です。

  • ReadLine は「1 行分の入力を文字列として受け取る」機能
  • ユーザーが Enter を押すまで待ってくれる

Console.ReadLine() の結果は「必ず string(文字列)」になります。
年齢もいったん文字列として受け取っているのがポイントです。

数値として扱いたいときは変換が必要

もし「年齢+1 歳」を計算したいなら、文字列のままでは足し算できません。
int に変換する必要があります。

Console.WriteLine("あなたの年齢を入力してください:");
string ageText = Console.ReadLine();

int age = int.Parse(ageText);

Console.WriteLine("来年、あなたは " + (age + 1) + " 歳になります。");
C#

ここでの重要ポイントは次です。

  • int.Parse(文字列) → 文字列を整数に変換する
  • 変換できない文字列(例: “abc”)を渡すとエラーになる

1日目の段階では、「文字列として受け取る」「必要なら int.Parse で数値にする」という流れだけ覚えておけば十分です。


1日目のまとめと、ここまでで作れる「小さなアプリ」

今日学んだキーワード

  • Console.WriteLine で画面に表示する
  • Console.ReadLine でキーボード入力を受け取る
  • string / int / double といった「型」
  • 変数は「型+名前+値」で宣言する
  • Main メソッドがプログラムのスタート地点

全部を完璧に覚える必要はありません。
「見たことがある」「なんとなく意味が分かる」が増えていれば十分です。

1日目の仕上げ課題(ミニアプリ)

最後に、こんな自己紹介アプリを自分で書いてみてください。

  • 名前を入力してもらう
  • 年齢を入力してもらう
  • 好きな食べ物を入力してもらう
  • 最後に 1 行でまとめて表示する

例:

Console.WriteLine("あなたの名前を入力してください:");
string name = Console.ReadLine();

Console.WriteLine("あなたの年齢を入力してください:");
string ageText = Console.ReadLine();

Console.WriteLine("あなたの好きな食べ物を入力してください:");
string food = Console.ReadLine();

Console.WriteLine("こんにちは、" + name + " さん(" + ageText + " 歳)。好きな食べ物は " + food + " なんですね。");
C#

ここまでできたら、1日目としては十分すぎるくらい良いスタートです。


次回(2日目)への予告

2日目では、今日の自己紹介アプリをベースにしながら

  • if 文(条件分岐)
  • 簡単な計算
  • 「ミニ診断アプリ」っぽいもの

に発展させていきます。

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