- PR -

VB.NETのインターフェイスについて

投稿者投稿内容
カウンター
大ベテラン
会議室デビュー日: 2004/02/19
投稿数: 123
投稿日時: 2004-02-20 18:17
引用:

なちゃさんの書き込み (2004-02-20 18:11) より:
っていうか、根本的なところで、多態とかポリモーフィズムという概念は理解されてますか?ここを理解していないと、意図が伝わらないと思います。



たしかに、そうですね。多態とかポリモーフィズムの部分を誤って理解していた
ような気がしてきています。
いい機会なので、週末にもう一度多態とかポリモーフィズムについて抑えてから
インターフェイスについて考えて見ます。
よねKEN
ぬし
会議室デビュー日: 2003/08/23
投稿数: 472
投稿日時: 2004-02-20 18:21
引用:

カウンターさんの書き込み (2004-02-20 17:12) より:
たしかに、インターフェイスでメソッドを定義して必要なクラスで実装すれば
良いような気はするんですが、インターフェイスはあくまでもテンプレートですよね?
ということは、実装先でメソッドの内容を記述する必要があると理解しています。
そうすると、結局は一つ一つのクラスにメソッドを実装することになるのではと
考えてしまいます。



その通りです。基本的にはそれぞれのクラスでメソッドを実装します。
#自分のクラスでは実際のロジックは書かず、別のクラスのメソッドを呼んで済ませる(委譲)
#ということもあるでしょうけれど、それも一応実装ですね。

「動くことができる」インタフェースの「動く」メソッドの実装の一例としては、
ロボットなら「ガシャンガシャンと進む」
人なら「てくてくと歩く」
犬なら「元気よく走る」
食虫植物なら「くねくねと揺れる」という実装になるでしょう。

#歩く、走る、揺れるを一緒くたにしていいのかよ!!っという、
#設計の良し悪しは度外視した例なのでご容赦を・・・。

それぞれのクラスでやることは違うので、それぞれのクラスで実装します。
そもそも共通化できるとは限らりません。
共通にできる場合は、共通の機能を兼ね備えたメソッドを用意し、
それぞれの「動く」メソッドを使用すればよいですね。(委譲)

でも、呼び出し側はその違いは気にせず、単に「動く」んだよ、
と呼びかけてあげるだけでOKです。



[ メッセージ編集済み 編集者: よねKEN 編集日時 2004-02-20 18:26 ]
はにまる
ぬし
会議室デビュー日: 2003/12/19
投稿数: 969
お住まい・勤務地: 誤字脱字の国
投稿日時: 2004-02-20 18:31
はにまるです。

 オブジェクト指向言語の実務経験していない者の意見ですが...
 
 超短納期の受注開発の時に、良く使った悪式手段で、
 
 設計行為の成果物として「設計書」を記述せずに、
 「サブルーチンとコメントのみを記述したプログラム」を作成して
 それを、プログラマーに「設計書」の変りとして渡していました。
 
 無論、プログラマーがサブルーチンを実装する必要はありますが、
 設計(私の考え)から外れる事は無く、結果、
 設計書で指示するより、かなり高い精度でシステムが出来ていました。
 
 # 今はISOの関係上出来無い...
 
 この時の「サブルーチンとコメントのみを記述したプログラム」の行為と
 同じ様に「インタフェース」を利用しないのでしょうか?

 つまり、「インタフェース」は、
  1.実装時に変な構成にさせない。
  2.個々PGでバラバラなメソッド名を付けさせない。
 規約をシステム的に処理する物と考えています。

 私はこっちの方が判り易いのですが、いかがでしょうか?

# 私も勉強し直し?って勉強中ですが... 

# 追記
 実装担当者にとっては、直接的に有益な物では無い。
 いいすぎ?


[ メッセージ編集済み 編集者: はにまる 編集日時 2004-02-20 18:34 ]
カウンター
大ベテラン
会議室デビュー日: 2004/02/19
投稿数: 123
投稿日時: 2004-02-23 20:57
皆さんのおかげで、おぼろげながら見えてきました。
これからも精進します!!
ありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)