コーディング規約 第3条
■ このスレッドは過去ログ倉庫に格納されています
0893デフォルトの名無しさん
2010/03/22(月) 01:58:50やはりラップの意味が判ってないね
『将来の事』というのは『環境の変化』を意味するのはラップの意図を理解していれば明白な事
A社が提供するライブラリ class A を使って何かの機能を実装していました
しかし、何かの理由でX社が提供するライブラリ class X を使用しないとならなくなりました
class A と class X ではインターフェイスも異なります
さて、ラッパーを噛ませないでBのメソッドがAのメソッドを直接コールしていたら修正作業はどうなりますか?
ラッパーを噛ませておいた場合はラッパー部分の修正だけで済みますけどね
後の環境変化に対して修正量を極力少なくするのがラッパーを噛ませる一番の理由だよ
そもそも Awrapper って書き方自体が変なんだよ
ラップは A を隠蔽するモノでは有るけど隠蔽対象が X になったり Y になったりした時に対応する為のもの
だから A が持つ機能で名前を付けるべきなんだよ
例えば WinSockWrapper なら winsock の機能をラップしたクラスとして妥当だけど CScokWrapper って名前にしちゃうと
意味が無いって事だね
まぁ CSock 自体が winsock をラップした様なもんだからこの例えは変だけど良いのが浮かばなかったから勘弁
■ このスレッドは過去ログ倉庫に格納されています