★このページはまだ書きかけです。
様々なクラスで再利用可能なのが小物クラス#
粒度が非常に小さいクラスのことを小物(こもの)クラスと私は呼んでいます。次のようなものです。- 数量
- 金額
- 日付
- 氏名
- 宛先
- クレジットカード番号
- 電話番号
これらは、他のクラスの属性として使われることを前提としています。そのため、極めて汎用的に設計しておく必要があります。その代わり、一度作ってしまえばシステムや時代ををまたがって再利用することが可能です。
数値系クラス#
まずは以下のクラス図を見てください。
金額クラス#
商品単価クラスが持っている金額クラスを考えてみます。日本の通貨である円を前提にするならばクラスにするまでもなく、intなどの整数属性として持てばいいように思えます。しかし金額クラスとして定義しておけば次のような振る舞いを持たせることが可能になります。
- 消費税金額を返す
- カンマと通貨記号で編集した文字列を返す
これらを反映したのが次のクラス図です。
amount_class.png
日付クラス#
日付クラスは何かが実行された年月日を持っているクラスです。日付クラスはとても汎用的に設計する必要があります。例えば、区切り文字で日付を編集した文字列を返すメソッドを実装するにしても、スラッシュ(/)で区切るメソッドやハイフン(-)で区切るメソッドなどいくつか必要になります。また、
- 翌日の日付を返す
- 翌月の日付を返す
- 翌年の日付を返す
特に会計システムなどでサイト計算が必要な場合は、
- xx日後の日付を返す
日本でのみ使われる前提のシステムの場合はロケールを意識しなくて済みますが、グローバルシステムの場合はシステムが稼働しているロケールも意識して日付編集を行う必要が出て来ます。
上記クラス図で解るように日付クラスは色々なクラスから利用されるため、色々な可能性を考えて設計する必要があります。
添付ファイルの追加
ログイン済のユーザのみが添付ファイルをアップロード出来ます。
添付ファイル一覧
Kind | Attachment Name | Size | Version | Date Modified | Author | Change note |
---|---|---|---|---|---|---|
png |
date.png | 3.9 kB | 2 | 20-8-2011 18:12 | ytp | |
png |
numeric.png | 29.0 kB | 8 | 31-12-2011 20:01 | ytp | |
png |
numeric2.png | 7.2 kB | 3 | 31-12-2011 20:04 | ytp | |
png |
volume.png | 2.2 kB | 1 | 18-8-2011 00:51 | ytp |
«
This particular version was published on 24-7-2011 01:47 by ytp.