オブジェクト指向言語の分類
オブジェクト指向言語と一言にいってもいろいろと分類ができます。
クラスベース
クラスからインスタンスを生成する、という視点で開発されたオブジェクト指向言語の事をクラスベースオブジェクト指向言語(Class Based Object Oriented Language)と呼称します。
Javaなどはこれにあたります。
プロトタイプベース
ある原形(プロトタイプ)からそれに機能を付加した実体を作成する、という視点で開発されたオブジェクト指向言語の事をプロトタイプベースオブジェクト指向言語(Prototype Based Object Oriented Language)と呼称します。
JavaScriptなどはこれにあたります。
まとめ
何か機能差があるかというと、それほどない場合が多いです。ただ視点が違うため、注意すべき点は多いです。
http://starry.night.nu/web/prog/javascript/c03_know_that_js_is_an_oopl.html
モデリングサンプル
オブジェクト指向ソフトウェア開発においては小さなモデルでいくつかモデリングをする事がのぞましいです。
身近な物でモデリングするのもよいですが時々退屈かも、、小さなゲームなどがよいかもしれません。
分類はかなりいいかげんです。
初級
参考サイト
比較的簡易な物。ただし、モデリングする時に数学の知識が多少は必要になります。
- 魔法陣
- ハノイの搭
- 3並べ
- 簡易電卓
中級
問題領域の取り方では巨大になってしまいますので注意してください。
- 目覚し時計
- CDプレイヤー
- 手
- インベーダゲーム
- ビリヤード
- マラソン大会
上級
非常に巨大になるので問題領域の工夫が求められます。
- 動物(犬とか猫)
- 自分の部屋