特に初心者にとってオブジェクト指向部分は「C#におけるプログラミングにオブジェクト指向というルールがある」という程度に考えないと深みにハマります。「C#プログラミングとはこんなものなんだ」っと。。完璧に理解せずに「ルール程度」と割り切りましょう。
オブジェクト指向とは何ぞや?私は何の事やら分からず、10年経ちました。本を何冊買った事やら。もう割り切りました。なるべく訳が分からなくならない様なルール作りです。一人で作る分には問題があまり無いかも知れません。
初学習者が学習を止めなくて良い範囲でC#プログラミングにおけるオブジェクト指向の概念というか、考えをまとめておきます。
オブジェクト指向プログラミングのオブジェクト構成
1 2 3 4 5 6 7 8 9 10 |
class オブジェクト//① { object obj;//②フィールド public object GetSetObj { get; set; }//③プロパティ void Func()//④メソッド・・・これは、具象メソッド(実装済)です。 { obj = null; } public virtual void 抽象的() { }//override可能ですが、具象メソッドです。 } |
①クラス名、属性(②フィールド、③プロパティ)、操作(④メソッド)を駆使してプログラミングを行う事です。
プロパティ
プロパティは属性の一部として上記で記述しておりますが、実際は「フィールドを正しく使用できるよう保証する」為のメソッドです。設定、取得可能なフィールドに対して、少し使い方を限定したメソッド使用して設定、取得の行為を行うルールだと思いましょう。
再利用可能なパーツを活用したり、一定のルールを作って全体の統一感を出す」程度の理解で留めよう。どの本にもオブジェクト指向について記載されてますが、分からず先に進みません。。。プログラムの一部をゴリゴリ書いていた人や特に一人で参考書を片手に勉強をする中では、その必要性を感じる事はないでしょう。
3大要素でいう、継承、隠蔽、多態性は一定のルールなんだな」っと思い、その様に心がけてプログラミングを行う」程度に解釈した方が良いと思います。