クラスの連携 つづき |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
次に、
メイン工場「以外」の工場の
クラスを考えていこう。
それぞれの工場で
道具の製造をしよう。
プロジェクト全体で見ると
メイン工場クラスが「本流」なら
これらの道具工場クラスは
「支流」って感じだね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
支流?分流?
なんでも
いいやー。 |
 |
|
 |
言葉って
難しいね。 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
最初は、
絵の具工場クラス。
ここでは、
絵の具を製造する機能
を作ろう。
絵の具を製造する機能は
こんな感じ?ってイメージで
メソッドを作ってみたよ。 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
 |
流れのイメージを
膨らませましたデス。
ハイ。 |
|
|
|
 |
|
 |
|
 |
|
|
各工場の流れ(絵の具工場) |
|
工程 |
実行回数 |
分類 |
順番 |
作業内容 |
準備工程 |
1回だけ |
準備処理 |
1 |
工場の開始準備をする |
運用工程 |
製造ライン
(随時) |
製造処理 |
2 |
絵の具を作る |
3 |
納品(製品を渡す) |
|
|
流れのイメージを膨らませてクラスにした |
|
|
|
 |
|
 |
|
|
イメージね。 |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
プロジェクトの
小さな機能を
設計図にしたんだね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
インスタンス化した時の
実行の流れはこんな感じ。
「製造ライン」メソッドの中から
「染料製造」「ラベル作成」の
メソッドを順番に呼んで
絵の具を製造するよ。
つまり「製造ライン」は、
メイン工場の「組立ライン」
みたいなもんだね。
各フィールドは、
道具の原料を使った分だけ、
増やしたり減らしたりする感じね。 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
 |
流れを見てね。 |
|
みんな
自分の流れ
を持ってる
んだね。 |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
そっか!
「製造ライン」が
絵の具工場の中の
主要な流れなんだね。
細かい流れの
主要な流れ・・・
それぞれの工場にも
流れがあるんだ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
やってることは
メソッドも
関数も同じー |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
ほら、この絵の具工場の
流れって前に見たこの
「関数のイメージ」の図に
似てない?
あの時、どんなことやったか
イメージしてね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
あっ!そっくりだ!
そうか、流れは同じなんだ!
「組立ライン」が
「製造ライン」に
名前が変わっただけだ!
関数でやったことと
同じことやってるんだ! |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
 |
なんか
重なってきたー。
何となく
理解できるかも。 |
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
ちなみに、
「組立ライン」は、
メインクラスの流れ。
「製造ライン」は、
個別クラスの流れ。
こんなイメージで、
名前をつけてみました。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
メインの目的は
「管理」や「組立」だから。
主要な流れと個々の
流れを名前で区別した
んだね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
ええ、どーせ
つまらんこだわり
ですよ、ええ。
ケッ |
 |
|
 |
分かりやすいと
思うよー
もうー
ひねくれものー |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
この中のメソッドで
重要なのは「準備処理」と
「製造ライン」。
「準備処理」メソッドは
絵の具工場を建てた時の
工場自身を初期化する
ためのメソッドだ。
今回はメイン工場と同じように
それぞれの工場が
自分の工場を建てた時の
初期化処理を持つように作るよ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
メイン工場と同じ仕組みだね。
インスタンス化した時に
「準備処理」メソッドを実行して
工場自身を初期化するんだね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
この2つ以外の
メソッドは
深い意味はないよ。
雰囲気作り。 |
 |
|
 |
了解です。 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
「製造ライン」メソッドは
「絵の具」オブジェクトの
製造処理を行う。
言わば、絵の具工場の
メイン生産ラインって感じ。
そして、メイン工場から
呼ばれるメソッドだ。
このメソッドを通して
メイン工場とつながるよ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
今回は、絵の具
オブジェクトは
イメージだけね。
クラスは
作らないよー |
 |
|
 |
そっか。 |
|
|