[VisualWorks top] [Lecture] [OOA/OOD] [Jun] [Bibliography] [Quotations]

In Praise of Learning: OOA/OOD


OOA/OOD

contents

  1. オブジェクトモデル、インスタンスとクラスとメタクラス
  2. オブジェクト指向の基本用語の確認
  3. オブジェクト指向分析設計の概説
  4. 2 次元座標系における2 点 (fromPoint,toPoint) を通る直線 (TwoDimensionalLine)
  5. ATM の簡単な分析と設計
  6. OMT のメタモデル
  7. オブジェクト指向分析設計の導入ガイド

オブジェクトモデル、インスタンスとクラスとメタクラス

SmalltalkLecture05.pdf

OMT の記法を習得していないと、会話に参加できません。

オブジェクト指向の基本用語の確認

  1. Simula67 -> Lisp -> Smalltalk へ至るオブジェクト指向
  2. オブジェクト指向への準備
  3. 継承: inheritance
  4. MVC テンプレート

OOAOOD/01.pdf

Simula67 -> Lisp -> Smalltalk へ至るオブジェクト指向

オブジェクト指向への準備

作法: examples, printOn:

継承: inheritance

MVC テンプレート

MVC 〜 observer pattern

MVC テンプレートのソース

[contents]


オブジェクト指向分析設計の概説

  1. 構造: オブジェクトモデル
  2. 事象と状態: ダイナミック・モデル
  3. 起こり得るもの: 機能モデル
  4. 2 次元座標系における2 点 (fromPoint,toPoint) を通る直線 (TwoDimensionalLine) を作成してください

OOAOOD/02.pdf

OOA/OOD の比較表

オブジェクト・モデリング・テクニック

OMT (Object Modeling Technology)

OOA/OOD

構造: オブジェクトモデル

切断と接続
オブジェクトモデルの内訳
オブジェクトモデルの内訳

クラスの詳細
クラスの詳細

汎化継承クラスインスタンス
汎化 (継承), クラスとインスタンス

集約と多重度
集約と多重度

関連限定子ロール名多重度
関連, 限定子, ロール名, 多重度

構成文章のオブジェクト図

構成文章のオブジェクト図

事象と状態: ダイナミック・モデル

ダイナミックモデル

マウスの状態遷移

マウスの状態遷移
クリックのトレース

起こり得るもの: 機能モデル

機能モデル
持つべき機能の一覧 procedure の順番とかは関係ない (実装に依存しない)

まず、データフロー、コントロール・フロー。そしてそれらを結ぶ機能

2 次元座標系における2 点 (fromPoint,toPoint) を通る直線 (TwoDimensionalLine) を作成してください

問題:SmalltalkLecture14.pdf

分析:SmalltalkLecture15.pdf

設計:SmalltalkLecture16.pdf

座標型
P1, P2
関数型
y = kx + a
z = hx + b
方程式型
(x - x1) / l = (y - y1) / m = (z - z1) / n
媒介変数型
x = x0 + ft
y = y0 + gt
z = z0 + ht

ATM の簡単な分析と設計

ATM の簡単な分析と設計

データ辞書, オブジェクトモデル, ダイナミックモデル, 機能モデル

カード、端末、口座番号、操作者、通帳、暗証番号、銀行名、支店名、口座種別、残高、金額、送金先……
ドメイン知識(問題領域を観る目)を持っていない人は、分析(設計)を するべきではありません。事実、分析(設計)しようと思っても無理で しょう。(たとえ偏見であろうとも)観点を持っていることは分析(設 計)の大前提なのです。これを「理論負荷性」と言います。

簡単でない分析と設計

図書館問題 (事務系アプリケーション)

リフト制御問題 (制御系アプリケーション)

OMT のメタモデル

OMT の三つのモデルのメタモデル

自己完備性:それ自身をそれ自体で記述可能であること

パラメータ空間 ― (写像) → 対象空間
  (正規化)               (見えているもの)
正規化、同時座標軸変換

OMT の分析設計プロセスのメタモデル

OMT 開発のメタモデルとパタン

レトリック
継承提喩Σまたは外延デンスケ抽象と具象の関係に着目、含まれている要素に分解して理解を得る。
多相隠喩πかつ内包タコ機能や活動、作用などの類似点に着目、意味の要素に分解して理解を得る。
集約 (全体-部分)喚喩Πおよび属性山の神全体と部分の関係に着目、構成要素に分解して理解を得る。
 
代入、関数定義直喩類似性を提示x := y;x と y が同じだなんて……
参照、関数呼出隠喩類似性に依存procproc って何?

BNF (言語シンタクスの定義) <-> BNF ダイアグラム
Object, Class, Instance <-> 全称, 限定
抽象 <-- Σ, π, Π --> 多様

オブジェクト指向分析設計の導入ガイド

オブジェクト指向分析設計の導入ガイド

オブジェクト指向らしさ


[VisualWorks top] [Lecture] [OOA/OOD] [Jun] [Bibliography] [Quotations]