C# の基本 ~ 開発環境の使い方 ~
C# とは プログラミング言語のひとつであり C C++ Java 等に並ぶ代表的な言語の一つである 容易に GUI( グラフィックやボタンとの連携ができる ) プログラミングが可能である メモリ管理等の煩雑な操作が必要なく 比較的初心者向きの言語である
C# の利点 C C++ に比べて メモリ管理が必要ない GUIが作りやすい Javaに比べて コードの制限が少ない コードが簡潔
C# の使い方 C# を動かすには開発環境を使う方法 テキストエディタとコンパイラを用いる方法がある テキストエディタから行う方法は コマンド操作等に慣れる必要があり作業が複雑になる ここでは開発環境 Visual C# 2010 Express を用いて学習を行う
ダウンロード方法 開発環境である Visual C# 2010 Express を microsoft のサイト (http://www.microsoft.com/japan/msdn/vst udio/express/) よりダウンロードする
ダウンロード方法 リンク先にて C# の開発環境をインストールする
ダウンロード方法 このダウンロードには数十分を要する スタート すべてのプログラム Microsoft Visual C# 2010Express で起動する
開発環境の使い方 開発環境のスタートページより ファイル 新しいプロジェクトを選択
開発環境の使い方 Windows フォームアプリケーションを選択 今回は名前を test として OK を押す 名前を test に変更する
開発環境の使い方 これでプログラムを書く環境が整った この時点では1 枚のウィンドウが表示されるプログラムが準備されている 緑三角の実効ボタンをクリック
開発環境の使い方 1 枚のウィンドウが起動する プログラムはウィンドウの ボタンを押す または青色の四角形の停止ボタンを押すと終了する
開発環境の使い方 プログラムは すべてを保存 ボタンより保存を行う 参照位置に test のフォルダができる
開発環境の使い方 再び作業を開始するときには test フォルダ内の test.sln より開始する
初めての C# プログラム 目標 ウィンドウ上のボタンを押す 文字が表示される
初めての C# プログラミング まず 表面上のウィンドウを作る ツールボックス を選択 ( 下の図のどちらかをクリック )
初めての C# プログラミング まず ボタンを配置する ツールボックスより Buttonを左クリックで選択する そのまま フォーム上を左クリックするとButtonを設置することができる
初めての C# プログラミング button1 を右クリック プロパティを開く Text の値を button1 から 表示 に変える
初めての C# プログラミング 同様にツールボックスより Label をで選択し フォーム上に設置する
初めての C# プログラミング label1 を右クリック プロパティを開く Font の値を MS UI Gothic, 9pt から MS UI Gothic, 30pt に変更する
初めての C# プログラミング Text の値を label1 から空欄に変える 以下の様にウィンドウが完成する
初めての C# プログラミング 次に 内部のコードを記述する 今回はボタンの中に動作を記述していく 作成したボタンをダブルクリックする ここをダブルクリック
初めての C# プログラミング コード画面が表示され以下の様なコードが書かれている using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace test { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_click(object sender, EventArgs e) { } } }
初めての C# プログラミング まずは コードに関しての説明はせず 最低限動く方法を説明する private void button1_click(object sender, EventArgs e) { label1.text = "Hello C#"; } このように 1 文のコードを記載する (; の記載漏れに注意 )
初めての C# プログラミング コードの記載が終わったら緑三角のボタンから動かしてみる 正しく記載できたなら 予定どうりボタンを押すと Hello C# が表示されるプログラムになっているはずである
コード解説
コード解説 部分毎に解説する using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; 一番上に書かれている部分であり 名前空間 (namespace) と呼ばれる
コード解説名前空間とは プログラミングに用いる関数 (sin cos 対数関数の様なもの ) やボタンやウィンドウ等の情報を定義するものである 例えば using System.Windows.Forms; の 1 文はボタン ラベル ウィンドウを定義してる System.Windows.Forms 名前空間をこのプログラムで用いるという意味である このプログラムでも様々な名前空間を用いていることが分かる
コード解説 namespace test { ~ } namespace test{~} というのは今回新たに作っていく test 名前空間を示している 今後のプログラミングではこの test 名前空間の中に記載していくことになる
コード解説 public partial class Form1 : Form { ~ } test 名前空間の中身を解説する ここには画面上で作ったウィンドウ ( 以降はフォームと呼ぶ ) に関する情報のコードを記載する このようなコードの塊のことをクラス (class) と呼ぶ 今回の場合は Form1 クラスを宣言していることになる
コード解説クラス コードのある一定の塊のことである Form1 を例に考える 作成したForm1にはボタンとラベルのコードを記載し ボタンを押した時の動作などを記載を記載する必要がある このように Form1に関連するコードは一箇所にまとめて書けると便利
コード解説クラス 他にも画像上で置いたボタンやラベルもクラスである それぞれ Form1 と同様に書かれている文字 大きさ等の定義がなされている 名前空間も実はクラスの集合体である
コード解説 public Form1() { } InitializeComponent(); Form1 クラスの中身を確認する ここの部分は開発環境により画面上で作った情報 ( ボタンの大きさ ラベルの位置 フォント等 ) を自動でコードに変換してくれる
コード解説 private void button1_click(object sender, EventArgs e) { label1.text = "Hello C#"; } ここでは Form1 の中の画像上でおいたボタン (button1) が押された時の動作 ( イベント ) を記載する
コード解説 label1.text = "Hello C#"; label1 というのは画像上で置いたラベルのことであり label1.text というのはそのラベルの Text の値 ( 現在は空欄 ) を示す Hello C# は Hello C# という文字であることを示す つまり で囲むとこれが文字であるという意味になる ( コンピュータは基本的に数字として理解しようとする ) プログラミング言語ではイコール (=) は左辺に右辺の値を代入するという意味になる よって この 1 文は label1.text に Hello C# を代入しなさい という意味になる
コード解説まとめ このように {} が多く複雑に見えるコードも分割することによりその構造を把握することができた