添付ファイルの追加

ログイン済のユーザのみが添付ファイルをアップロード出来ます。

添付ファイル一覧

Kind Attachment Name Size Version Date Modified Author Change note
png
custocompany1.png 3.3 kB 1 25-6-2011 03:28 ytp
png
custocompany2.png 4.1 kB 1 25-6-2011 03:28 ytp
png
name.png 8.2 kB 4 31-12-2011 21:46 ytp
png
name2.png 8.3 kB 3 31-12-2011 21:43 ytp
png
supplyer.png 3.4 kB 1 25-6-2011 03:28 ytp

This page (revision-22) was last changed on 25-7-2014 20:50 by ytp

This page was created on 23-5-2011 01:03 by ytp

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 8 changed one line
商取引を扱うシステムで良く出てくる「顧客会社」を使って考えてみます。\\
商取引を扱うシステムで良く出てくる「顧客会社」クラスを使って考えてみます。\\
At line 10 added 37 lines
このクラスの中には「担当者姓」と「担当者名」という属性があります。そしてこの二つの値を使ったメソッド「担当者氏名を返す」を考えてみます。姓と名の間にスペースを挟んで返す仕様だとします。コードは次のようになるでしょう。
%%prettify
{{{
public String getTantoushaSimei() {
return this.tantoushaSei + " " + this.tantoushaMei;
}
}}}
/%
\\
次に、このクラスが仕様変更となり、「代表者姓」と「代表者名」という属性が追加されたとします。「代表者氏名を返す」というメソッドもこの時必要になったとすると、以下のようなコードを追加することでしょう。
%%prettify
{{{
public String getDaihyoushaSimei() {
return this.daihyoushaSei + " " + this.daihyoushaMei;
}
}}}
/%
\\
そして次に、「いずれの氏名を返す時も、姓と名の間のスペースを2つに替えて欲しい。」という要望が挙がったとします。よく見てみると上記二つのメソッドは非常に良く似ています。「スペースを挟んで姓と名を連結する」という仕様だからです。こういう時、privateメソッドを作っておくと変更が一カ所で済んだはずです。次のようなコードです。
%%prettify
{{{
private String getSimei(String sei, String mei) {
return sei + " " + mei;
}
public String getTantoushaSimei() {
return getSimei(this.tantoushaSei, this.tantoushaMei);
}
public String getDaihyoushaSimei() {
return getSimei(this.daihyoushaSei, this.daihyoushaMei);
}
}}}
/%
こうしておけば、間に挟むスペースが3つに替わろうが変更箇所は1カ所で済みます。\\
果たして本当にそうでしょうか? 例えば「仕入れ先」クラスが別にあったとして、その属性にも「担当者姓」「担当者名」があったとしたらどうでしょう? そしてそのクラスにも「担当者氏名を返す」というメソッドが必要で、「姓と名の間にスペースを2つ挟む」という仕様だったら?\\
!!ユーティリティクラスを作ってみる
Version Date Modified Size Author Changes ... Change note
22 25-7-2014 20:50 7.789 kB ytp to previous
21 31-12-2011 21:42 7.791 kB ytp to previous | to last
« This page (revision-22) was last changed on 25-7-2014 20:50 by ytp