解説ASP.NETで学ぶVisual Studio .NETの魅力第5回 Visual Studio .NETのヘルプ機能で開発を効率化 山田 祥寛 |
|
|
■機能をカプセル化する「クラス」を知る
それでは、System.Data.Odbc名前空間のクラス一覧の中から、試しにOdbcCommandクラスを選択してみよう。
OdbcCommandクラスの説明 |
画面左上部の3つの小さなアイコンはよく利用される項目へのリンクとドキュメント自体のフィルタである。3つのうち、右端の「言語」ボックスでは、構文や使用例を自分が使用している言語に絞り込み表示することができる。ただし、多くの使用例がVB.NETとC#で提供されており、JScript.NETやC++では使用例がないものも多いので注意してほしい。 |
クラスは、内部の情報を保持し外部からアクセスさせるためのプロパティや、処理を制御するメソッド、外部で発生したアクションを受け取るイベントなどを1個にまとめた(カプセル化した)もののことをいう。先にも述べたように、名前空間の配下には、そのほかにもインターフェイスやデリゲート、構造体などの概念が存在するが、本稿では最も使用頻度も多く、初心者にとって理解しやすいクラスを例に紹介することにしよう。
クラスのページは、以下のような項目から構成される。
項目 | 内容 |
概要 | クラスの概略。.NET Framework 1.1から導入されたクラスである場合には、ここでその旨が赤字で表記されているはずなので注意すること |
継承関係 | 現在のクラスがどのようなクラスを継承しているかをツリー図で示す。上位階層のクラスにもリンクが張られているので、併せて参照することで、クラスに関する理解を深めることができるだろう |
構文 | 継承しているスーパー・クラス(親クラス)、実装しているインターフェイス、および、アクセス権限などの属性情報を表す |
スレッド・セーフ | マルチスレッドでの実行(同時実行)が許されるか。特に、複数リクエストが発生するWeb環境において、スレッド・セーフであるかどうかは重要なポイントである |
解説 | クラスに関するより詳細な解説。利用に際しての注意や一般的な用法などが散文的に記述されているので、初心者にも比較的分かりやすい。クラスに関する概略を知りたいという場合には、せめてこのレベルまでは目を通しておきたい |
使用例 | 具体的なコーディング例を紹介する。多くがVB.NET、C#の2系統並列で紹介されているので、まずはこのサンプルを実際に自分の環境で動かしてみるというのもよい勉強だろう(意地悪ないい方をすれば、そのままではなかなか動かないはずだ)。コードを捕捉しつつ、必要な環境を整える過程は決して「コピペ」にとどまらない理解につながるはずである |
名前空間 | 本クラスが属する名前空間。ASP.NETでは@Importディレクティブで名前空間をインポートすることができる |
プラットフォーム | 必要なOS環境。クラス・ライブラリとしては、多くがWindows 98以降に対応しているが、ASP.NETはWindows 2000/XP Professional以降でしか動作しないので注意すること |
アセンブリ | クラス・ライブラリを含むアセンブリ(ほとんどが「.dll」ファイル) |
参照 | 関係するトピックスへのリンク。[<クラス名>メンバ]のリンクからクラスに属する各種機能リストを参照することができる |
クラスのページで表示される項目と内容 |
構文に関して補足する。先ほど示した画面のVisual Basic構文に即していうと、OdbcCommandクラスはComponentクラスを継承し、IClonableおよびIDbCommandインターフェイスを実装している。そして、本クラスの継承は認められず(NotInheritable)、本クラスにはどこからでもアクセスが可能である(Public)。APIリファレンスを理解するということが、基本構文の理解につながるといったことの意味がここでお分かりになるのではないだろうか。こうした構文1つにも、さまざまな意味がコンパクトに集約されており、これを読み解くためにはさまざまなキーワードの意味を知る必要がある。
■クラスを生成する特殊メソッド「コンストラクタ」
「.NET」の機能をなんとなく知りたい、概略のみをつかんでおきたいというレベルであるならば、せいぜい上述のクラス概要に目を通しておけば十分だろう。しかし、確たる目的を持ってコーディングを行いたい、あるいは機能構成を知りたいという場合には、ここからが重要である。
クラスのページから[<クラス名>メンバ]のリンクをたどることで、以下のようにクラスに属する一連のメンバが表示されるはずだ。メンバは大きく、パブリック〜、プロテクト〜に分類されるが、最初のうちはまず、すべてのクラスからアクセス可能なパブリック〜の部分に注目しておけばよいだろう。以下で単に「コンストラクタ」「プロパティ」「メソッド」「イベント」というキーワードが登場した場合には、それぞれ「パブリック・コンストラクタ」「パブリック・プロパティ」「パブリック・メソッド」「パブリック・イベント」であるものとする。
OdbcCommandメンバ |
OdbcCommandクラスに属するメンバの一覧が表示される。 |
「コンストラクタ」はクラスのインスタンス(オブジェクト)を生成する際に自動的に呼び出される特殊なメソッドであり、クラスを利用するに当たっては最初に必要な知識である。
OdbcCommandのコンストラクタ |
コンストラクタは、クラスを生成する特殊なメソッド。 |
例えば、上の画面はOdbcCommandクラスのコンストラクタを説明するページであるが、
Public Sub New() |
とあるので、OdbcCommandクラスは上の3通りでインスタンス化できることが分かる。すなわち、
Dim objCmd1 As New OdbcCommand() |
のようにである。SQLコマンド(SELECT文)と接続先を表すOdbcConnectionオブジェクト(変数db)の指定は省略可能である。もちろん、個々のコンストラクタのページ(下図)を参照することで、使用例を参照することも可能であるが、構文レベルで対応するコードを作成できる能力を培っておくのが好ましいだろう。
OdbcCommandコンストラクタ(String) |
個々のコンストラクタのページで使用例を参照することもできる。 |
INDEX | ||
ASP.NETで学ぶVisual Studio .NETの魅力 | ||
第5回 Visual Studio .NETのヘルプ機能で開発を効率化 | ||
1.オペレーションに即応する「ダイナミック・ヘルプ」 | ||
2.従来からある「目次」、「キーワード」ヘルプを使いこなせ | ||
3.APIリファレンスでクラス・ライブラリの構造を把握する | ||
4.機能をカプセル化する「クラス」/クラスを生成する「コンストラクタ」 | ||
5.属性情報を保持する「プロパティ」/動作を制御する「メソッド」 | ||
「解説:ASP.NETで学ぶVisual Studio .NETの魅力」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|