K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>はじめまして。拙著を読んでいただきありがとうございます。 > >>しかし、Factory.java内で"import com.sample.libimpl.*"を記載せざるを得ません。 >>何を気にしているかというと、Cで言えば、パブリックなヘッダに、プライベートなヘッダを書いているようなコードに見える点です。 >>利用者から完全に~impl部分を隠ぺいする一般的な手法はあるのでしょうか。 > >これは確かにその通りなのですが、私はこれについては >「まあ、Factoryだけはしょうがない」 >と考えています。 >どこかで実装クラスが何であるかを明示しなければいけない以上、 >そこでは実装側のパッケージをimportせざるを得ません。 ># 「Java謎+落とし穴~」にどう書いたかと思って見返したら、 ># 「実はここが頭の痛いところなのですが~」と書いてますね…… > >利用者からさらに実装を隠蔽し、状況によって実装クラスを >差し替える手法として、Dependency Injectionという考え方もあります。 >ただ、実装をあまり分離しすぎると、それはそれでわかりにくくなったりもします。 > >https://twitter.com/kudzu/status/862906043591925762 >>DI使ってコード書いてるわし「こんな簡潔にモジュラーでテスタブルなコードが書ける!すごい!天才!」 >> DI使った他人のコード読んでるわし「おい、これどこから呼ばれてんだよ。わかんねぇぞ。○すぞ。」 >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!