トップ «前の日記(2010-12-15) 最新 次の日記(2010-12-17)» 編集

日々の破片

Subscribe with livedoor Reader
著作一覧

2010-12-16

_ 1つの言葉、複数の概念

winplusさんの『売上の「正しい」名前とは何か』を読み、頭をひねる。

ビジネスの世界じゃなければ、名前空間で分けるけど、そういうことでもなさそうだし。

でも、もし、それがOOPの世界だったらどうだろうか?

売上はSalesで、SalesのデータなんだからSalesDataとかいうPOJO(POCOでも良いけど)を作ることにして、工場と商品企画で異なる名前空間があるとする。

namespace 工場
class 売上 {
  顧客 {get; set; }
}
namespace 商品企画
class 売上 {
  顧客 {get; set; }
}

これについては、それほど違和感ないな。

名前空間ってのは、日常生活での言語においては文脈ってことになるけど(文脈によって同じ言葉が異なる概念を持つ)、データベースではそれは何だろうか。データベース(カタログ?)ってやつかな。

でも、文脈っていうので実は良いのではなかろうか。

if (endPoint == "商品企画") {
  notify(salesData.Customer);
} else if (endPoint == "直接販売") {
  notify(salesData.Customer);
}

ここでの文脈はendPointで、それぞれの節内で、上のほうは内線電話が鳴り、下のほうはEメールが飛ぶ(か、カスタマサポートとか外商とかに指示が飛ぶ)。

というか、OOPであれば、はなからthisが異なるクラスだから途中で自分が何者かを調べるまでもなく

notify(salesData.Customer);

で良いのであった(というか、そう記述する)。

……なんという空気読みの世界。


2003|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|

ジェズイットを見習え