複数のソースコードでプログラムを作成しよう!

[C#] 複数のソースコードでプログラムを作成しよう!

※ 当サイトは広告を含みます。

ここではプログラムを複数のソースコードに分割する方法を学びます。
普通は複数のcsファイルでプログラムを作成するので、これは必須の知識になります。

複数のソースコードに分割する理由

理由は単純です。1ファイルに全て書いてたら長くて読みづらいし、1人しか開発できません。
特にソースコードの長さと保守性は関係性が高く、ソースコードが長すぎるとゴミ扱いされます。

りさ

何行くらいから長いの?

管理人

1000行とか超えると長いんだけど、UI系とか普通に記述して超えることもある。
それもあって特に何行って指標はないかな。良くないのは簡単に分割できる処理を1つにすること。

ソースコードを追加する方法

いくつか手段がありますが、ここでは最もシンプルな方法を利用します。
次の手順に従ってVisual Studioを操作してください。

Visual Studio
管理人

カスタマイズしてるから見た目が違うかも。

STEP
[ソリューション エクスプローラー]を探す。
ソリューション エクスプローラー
STEP
[プロジェクト]を右クリックする。
STEP
[追加]を選択する。
STEP
[新しい項目]を選択する。
新しい項目の追加方法
STEP
[ダイアログ]が開く。
STEP
[ファイルの種類]を選択する。
STEP
[ファイル名]を入力する。
STEP
[追加]を選択する。
[ダイアログ] 新しい項目の追加
STEP
[ファイル]が追加される。
新しいファイル

Tips既存のcsファイルをOS側でコピー、ソリューション エクスプローラーに貼り付ける方法でも追加できます。

複数のソースコードにプログラムを記述する

複数のソースコードでコーディングするのは簡単です。大抵は意識しなくても動きます。
ここでは次のような2ファイル構成でプログラムを作成することにします。

  1. Program.cs
  2. Class1.cs

最初にClass1.csをコーディングします。これは呼び出される側の簡単なクラスです。
中身は表示用のメソッドのみ、インスタンス化して呼び出せば引数の値が出力されます。


namespace Sample
{
  internal class Class1
  {
    public void Display(string name)
    {
      Console.WriteLine($"name={name}");
    }
  }
}

補足自動的に作成されたusingが不要なら消しても良いです。

次にProgram.csをコーディングします。こちらには先程のクラスを呼び出す処理を書きます。
なお、一般的にMain関数(メソッド)Program.csに記述します。と言うか、何もしなければ最初から書いてあります。


namespace Sample
{
  internal class Program
  {
    static void Main(string[] args)
    {
      var c = new Class1();
      c.Display("りさ");
    }
  }
}

2つのファイルをコーディングしたら普通にビルドします。どこにも問題がなければビルドは終了します。
この時、分割したファイルのいずれかに問題があると、全体がビルドエラーとなりプログラムは実行できません。

POINTIDEビルドエラーになってるファイルを教えてくれます。ちゃんとエラーを見ましょう。

ディレクトリと名前空間の関係

複数のcsファイルはフォルダを作って管理することもできます。大規模なプログラムになるほど必要な作業です。
そして、このファイルとフォルダの関係は名前空間とリンクしてます。つまり、ディレクトリ構造がそのまま名前空間になります。

ここで注意ですが、実はディレクトリ構造と名前空間の関係は必ずしもリンクする必要はありません。
有効なのはcsファイルnamespaceで記述した名前空間です。これが合ってればビルドエラーにはなりません。

管理人

特別な理由がなければ名前空間とディレクトリ構造はリンクさせましょう。

ディレクトリ(フォルダ)を追加する方法

先程のファイルを追加する方法と同じく、ソリューション エクスプローラーから操作します。
今回はプロジェクトのルートに追加するので、プロジェクトを選択して右クリックします。

STEP
[プロジェクト]を右クリックする。
STEP
[追加]を選択する。
STEP
[新しいフォルダー]を選択する。
新しいフォルダの追加方法
STEP
[ディレクトリ(フォルダ)]が追加される。
新しいフォルダ

作成したフォルダ名を変える場合はエクスプローラーと同じ感覚で操作します。
例えば右クリックして名前を変えるとか、F2のショートカットを使うとか。

ディレクトリ(フォルダ)にファイルを追加する方法

ディレクトリにファイルを追加する方法はプロジェクトに追加した方法と同じです。
先程はプロジェクトを右クリックしましたが、今回は対象のディレクトリを右クリックします。

POINT追加したいディレクトリを対象に右クリックする。

正しく追加された場合、こんな感じになります。

新しいフォルダ

また、名前空間とディレクトリ構造がリンクしてることを確認しましょう。


namespace Sample.Data
{
  internal class Person
  {
  }
}

あとがき

人のソースコードを見た時に無駄に長いとやる気なくなる。

◆ C#に関する学習コンテンツ

この記事は参考になりましたか?

関連記事

コメント

この記事へのコメントはありません。