名前空間って少年漫画に出てきそう
どもども!こんばんは!
クローバーフィールドの伊関です。
今日はついに大阪は33℃を記録してしまいました。
いくらなんでもやりすぎだと思うんですよ。。
耐えられず只今おうちでクーラーをつけてしまいました。
恐らく夏は伊関はセミよりも早く燃え尽きるでしょう。
せめて、せめてその前にちょっと前でも勉強して知識を身につけたいと思います。
まぁ死にはしませんけどね。
◎名前空間(ネームスペース)
さて、コントロールのインスタンスを生成するコードが、Form1.Designer.csと、Form1.csとで違っていたことに気がついたでしょうか。
Form1.Designer.csの方は
this.label1=new System.Windows.Forms.Labels();
であり、Form1.csの方は、
this.button1=new Button();
になっています。どうしてForm1.Designer.csの方だけ「Systems.Windows.Forms.」が余分についているのでしょう。そもそも、System.Windows.Formsとはなんでしょうか。これは「名前空間(ネームスペース)」と呼ばれるものです。
.NET Frameworkクラスライブラリには膨大な数のクラスが登録されています。この膨大なクラスを分類するのが、名前空間です。.NET Frameworkクラスライブラリで使われている名前空間のネストになっています。例えばlabel1コントロールの構造を見てみましょう。
図 System.Windows.Forms.Labelクラスの名前空間
名前空間を見るだけで、クラスの機能が想像できるのではないでしょうか。このように.VisualC#では、名前空間を使ってクラスの所属をわかりやすく分類しています。ちょうど、ファイルとフォルダに分けて格納するのに似ていますね。
また、名前空間が異なれば、同じクラス名をつけてもいいことになっているので、膨大な量のクラスの名前付けで重複を避けるための労力を省くことができます。
以上です。
実は結構な数ブログで名前空間を使っているのですが、やっとこ詳しいところをやりました。
正直思ってた倍くらいややこしくて頭の悪い伊関は混乱しております。
それでも基礎中の基礎なので、ブログの後も繰り返し復習していきたいと思います。
まぁ今後勉強して言ったら嫌でも覚えるとは思いますがね。
では。