1.C#の概要
特徴
マイクロソフトが開発した言語
JavaとC++のいいとこどりした言語
オブジェクト指向言語
イベントリブン型(「ボタンが押された時」や「画面が表示された時」などをイベントとして処理出来る)
.NET Frameworkとは
すべてをゼロから作るのではなく上手く組み合わせる
クラスライブラリという部品群を組み合わせてC#で作っていく
また、共通言語ランタイム(CLR)というのが動いている。
- 実際に動く部分で、VBとC#が同じ動作をするようになっている。
- 実行システムで、セキュリティやガベージコレクションなどが裏で動いている
ソリューションとは
C#を作ろうとしたら一番最初にソリューションを作る必要がある。(.sinファイルのこと)
プロジェクトという要素を包括しており「各プロジェクトの依存関係の解決」を行う。
プロジェクト
コンパイルするために「必要なプログラムや素材を管理」する。
このプロジェクトをコンパイルすることによって.exe や.dllなどのファイルが生成される。
デバックもプロジェクト単位で行う。
プログラム
C#などのプログラム言語で書かれたファイルなど
https://gyazo.com/70bdd7c52b1de4f53eafe97b80f21376
アプリケーションの製品単位にソリューションが存在していて、画面機能やカテゴリーごとにプロジェクトを分ける必要がある。また、参照関係を(画面のプロジェクトから共通で使うクラスを参照出来るようになったりする)
名前空間とは
namespaceを書くことによってその中に書くクラスの階層を変えることが出来る
→重複を防ぐことが出来る!!
下記の例だと普通に書くとFileクラスが他と重複する可能性があるが、namespaceを用いることによってXXPro.ClassLibraryのFileになる
code:C#
Namespace XXPro.ClassLibrary{
public class File{
}
}
ブロックについて
コンストラクタはインスタンスを生成する時に呼ばれる
基本的にC#は new をかいてインスタンスを生成する。
ネームスペースは宣言しなくても使える
→その場合はSystem.Windows.Forms.formのように全部書く必要がある
エラー時に「command+.」を押すと名前空間を予測して出してくれる
code:C#
//ここで使うネームスペースを宣言する
using System.Windows.Forms
//名前空間
Namespace test{
//クラス
public partial class main : form{
//コンストラクタ
public main(){
InitiallizeComponent();
}
//関数
private int GetValue(){
return 1;
}
}
}
変数について
変数は値が変化する
例: private int count = 0;
count += 2;
定数は値が不変である
例: private const int AAA = 10;
https://gyazo.com/5590a9343d88b1e364f1309f64614bfb
値を最大を入れたい場合は以下のように入力する
Int intValue = int.MaxValue;
Float を書く場合は小数点の最後に「f」をつける
例: float floatValue = 1.2345f;
→基本的に何も書かない場合はdouble型に判定されるため、明示的に表す必要がある。
ちなみに doubleも明示的に表す場合は最後に「d」をつける