第0章 研修の進め方とC#プログラミングを始める前に
この章の目的
Section titled “この章の目的”この章では、C#プログラミングを始める前に、研修全体の進め方、使用する開発環境、作成するアプリケーションの種類、提出方法を確認します。
この研修では、C#の基本文法だけでなく、最終的に次のような内容まで学習します。
C#の基本文法クラスとオブジェクト指向例外処理Oracle Databaseへの接続ASP.NET Core MVCによるWebアプリWindowsフォームアプリによるデスクトップアプリ登録・更新・削除などの基本的なDB操作最初はコンソールアプリから始めます。
コンソールアプリは、文字を入力し、文字で結果を確認するシンプルなアプリです。
入力してください。山田太郎
こんにちは、山田太郎さん最初からWebアプリやデスクトップアプリを作ると、画面、DB、通信、イベントなど多くの要素が一度に出てきてしまいます。
そのため、まずはコンソールアプリでC#の基本を身に付け、その後にWebアプリやWindowsフォームアプリへ進みます。
この章では、次のことを確認します。
この研修で何を学ぶのかどのようなアプリを作るのかVisual Studio 2022をどのように使うのか.NETとは何かソリューションとプロジェクトとは何かOracle Databaseをどこで使うのかGitでどのように提出するのか演習をどのように進めるのかエラーが出たときにどう考えるのかこの章でできるようになること
Section titled “この章でできるようになること”この章を終えると、次のことを説明できるようになります。
- この研修で学習する全体像を説明できる
- コンソールアプリ、Webアプリ、デスクトップアプリの違いを説明できる
- C#と.NETの関係をおおまかに説明できる
- Visual Studio 2022の役割を説明できる
- ソリューションとプロジェクトの違いをおおまかに説明できる
- Oracle Databaseを後半で利用することを理解できる
- Gitによる提出の基本的な流れを説明できる
- 演習課題の進め方を理解できる
- エラーが出たときの基本的な確認方法を説明できる
- このテキストをどのように読めばよいか理解できる
本章で使用する環境
Section titled “本章で使用する環境”| 項目 | 内容 |
|---|---|
| 開発環境 | Visual Studio 2022 |
| 補助ツール | Visual Studio Code |
| 実行環境 | .NET 8 |
| DB | Oracle Database |
| DB接続ユーザー | pingt |
| 提出方法 | Gitでcommit、push |
| 最初に作成するアプリ | コンソールアプリ |
0-1 この研修で学ぶこと
Section titled “0-1 この研修で学ぶこと”この研修では、C#を使ってプログラムを作成するための基礎を学習します。
ただし、単に文法を覚えるだけではありません。
現場では、次のような作業を行うことがあります。
既存システムのコードを読む不具合の原因を調査する小さな機能を追加する画面に項目を追加するDBから取得するデータを変更するSQLの条件を修正するエラー内容を確認するそのため、この研修では、C#の文法だけでなく、アプリケーション全体の構成も少しずつ学びます。
学習の流れは次の通りです。
1. C#の基本文法を学ぶ2. クラスとオブジェクト指向を学ぶ3. 例外処理を学ぶ4. C#からOracle Databaseに接続する5. Webアプリの基本を体験する6. Windowsフォームアプリの基本を体験する7. 登録・更新・削除の流れを体験する8. 最後に到達確認演習を行う0-2 この研修で作成するアプリの種類
Section titled “0-2 この研修で作成するアプリの種類”この研修では、主に次の3種類のアプリケーションを扱います。
コンソールアプリWebアプリWindowsフォームアプリそれぞれの特徴を確認します。
コンソールアプリ
Section titled “コンソールアプリ”コンソールアプリは、文字を入力し、文字で結果を表示するアプリです。
整数を入力してください。10
入力された数値は10です。最初にコンソールアプリを使う理由は、画面の作り方に気を取られず、C#の基本文法に集中できるからです。
コンソールアプリでは、主に次の内容を学習します。
変数データ型if文switch文for文while文配列Listメソッドクラスオブジェクト指向例外処理DB接続の基本Webアプリ
Section titled “Webアプリ”Webアプリは、ブラウザーからアクセスして利用するアプリです。
例:
社員一覧画面社員詳細画面検索フォーム登録画面更新画面削除確認画面この研修では、ASP.NET Core MVCを使ってWebアプリを作成します。
MVCでは、役割を次のように分けます。
Model 画面で扱うデータを表す
View HTMLとして画面を表示する
Controller リクエストを受け取り、処理の流れを決めるWebアプリ編では、深く作り込むことよりも、次のことを重視します。
MVCの構成を理解するController、Model、Viewの役割を理解するDBから取得したデータをWeb画面に表示するフォームから入力値を受け取るWindowsフォームアプリ
Section titled “Windowsフォームアプリ”Windowsフォームアプリは、Windows上で動くデスクトップアプリです。
画面上に次のような部品を配置して作成します。
LabelTextBoxButtonListBoxDataGridViewWindowsフォームアプリでは、ボタンをクリックしたときなどに処理が動きます。
ボタンをクリックする ↓クリックイベントが実行される ↓DBからデータを取得する ↓DataGridViewに表示するこのように、利用者の操作をきっかけに処理が動く考え方を、イベント駆動と呼びます。
Windowsフォームアプリ編では、次のことを重視します。
画面部品の配置に慣れるイベント処理に慣れるDataGridViewで一覧を表示するDBから取得したデータを画面に表示する登録・更新・削除の流れを体験する0-3 C#とは何か
Section titled “0-3 C#とは何か”C#は、Microsoftが中心となって開発しているプログラミング言語です。
C#は、次のようなアプリケーション開発に利用できます。
コンソールアプリWindowsデスクトップアプリWebアプリWeb APIスマートフォンアプリゲームクラウドアプリ業務システムこの研修では、その中でも次の3種類を扱います。
コンソールアプリASP.NET Core MVCによるWebアプリWindowsフォームアプリC#はオブジェクト指向の言語です。
そのため、研修の途中から次のような考え方が重要になります。
クラスオブジェクトプロパティメソッドコンストラクター継承インターフェイス最初は難しく感じるかもしれません。
しかし、現場のC#コードでは、これらの考え方が頻繁に登場します。
この研修では、いきなり高度な設計をするのではなく、簡単なコードを書きながら少しずつ理解していきます。
0-4 .NETとは何か
Section titled “0-4 .NETとは何か”C#でプログラムを作るときには、.NETという仕組みを使います。
.NETは、C#などの言語で作成したプログラムを動かすための実行環境やライブラリの集まりです。
この研修では、主に .NET 8 を使います。
Visual Studioでプロジェクトを作成するときに、フレームワークとして次のような項目を選択します。
.NET 8.0この研修では、特別な理由がない限り、.NET 8.0 を選択します。
.NETが用意してくれるもの
Section titled “.NETが用意してくれるもの”.NETには、便利な機能が多数用意されています。
例:
文字列を扱う機能日付を扱う機能ファイルを読み書きする機能一覧データを扱う機能Webアプリを作る機能画面アプリを作る機能例外処理の仕組みたとえば、文字を画面に表示するには、次のように書きます。
Console.WriteLine("こんにちは");この Console も、.NETが用意している機能の一部です。
0-5 Visual Studio 2022の役割
Section titled “0-5 Visual Studio 2022の役割”この研修では、主な開発環境として Visual Studio 2022 を使用します。
Visual Studioは、プログラムを作るための統合開発環境です。
統合開発環境は、英語ではIDEと呼ばれます。
IDE Integrated Development Environment 統合開発環境Visual Studioでは、次のような作業を行えます。
プロジェクトを作成するC#コードを書く画面を設計するプログラムを実行するエラーを確認するデバッグするNuGetパッケージを追加するGit操作を行うVisual Studioでよく使う画面
Section titled “Visual Studioでよく使う画面”Visual Studioでは、次の画面をよく使います。
| 画面 | 役割 |
|---|---|
| ソリューションエクスプローラー | プロジェクト内のファイルを確認する |
| コードエディター | C#コードを書く |
| エラー一覧 | コンパイルエラーなどを確認する |
| 出力ウィンドウ | 実行時の出力やビルド結果を確認する |
| プロパティウィンドウ | 画面部品の設定を変更する |
| ツールボックス | Windowsフォームの部品を配置する |
最初は画面が多くて戸惑うかもしれません。
まずは、次の3つをよく使うと考えてください。
ソリューションエクスプローラーコードエディターエラー一覧Windowsフォームアプリに入ると、次の2つも重要になります。
ツールボックスプロパティウィンドウ