2006-08-11から1日間の記事一覧

% を利用した便利術

s = ["a","b","c"] for i in 0..10 print s[i % 3],"\n" end ↓↓ a b c a b c a b c a bこれは便利!

各クラスの属性を洗い出す

属性とは、「インスタンスごとに用意されるべき要素」○ポイント ・他のクラスからの操作によって影響を受けるオブジェクト固有の状態 ・他のクラスから必要とされるオブジェクト固有の情報 ・外部に影響しない属性は不要である(不要な属性が大量に出てしま…

オブジェクト指向の世界 != 現実世界

「オブジェクト指向は現実世界における私たちの認識を、できるだけそのまま表現できるようにしたもの」と説明されています。 しかし、(ばば抜きプログラムの)手札クラスのように、現実にはありえない操作を持たせています。 オブジェクト指向で重要なのは…

クラスを抽出したら、クラスの関連性を洗い出す!

クラスの関係性を洗い出す理由は、 「それぞれのオブジェクトがどのようにメッセージを送りあうのか、考えやすくなる」それにより、 ・どのクラスからどのクラスへメッセージを送るのか ・どのようなメッセージを送るのか ・メッセージを受け取った結果、ど…

ユースケースからクラスを抽出する際の注意!

○ユースケースからクラスを抽出するさいの注意! クラスとは「人物」に限らない。「役割」さえ持っていれば、必ずしも人物である必要はない。○名詞抽出法 ユースケースからクラスを抽出する方法のひとつ。名詞を抽出して、クラスになりそうなものを選択する…

ユースケース

ユースケースとは、 「ユーザがソフトウェアをどのように利用するかというシナリオを文章として記述しています(このシナリオをユースケースと呼びます)。ソフトウェアを文章で表す事」仕様はいつも悩みます。。 仕様を決定する段階では、ユースケースを書…

ユニットテスト / テスト駆動開発

クラスやモジュールごとに、メソッドをテストするプログラムを作成する。まずは、このテストプログラムから書くのが現在の開発スタイル。テストプログラムを書く時間が増えるが、けっして開発時間が倍になるわけではない。バグが減り、信頼性の高いプログラ…