「オブジェクト指向プログラミング」その起源からの検証
#論文メモ
OOPの論文
OOPの真意、必要性、方向性について
PDF
山本雅昭
1996/6
雑な感想
「企業での開発にOOPが取り入れられる兆しもない」と書かれてあって時代を感じるmrsekut.icon
「オブジェクト指向」は単にプログラム・コーデイングを技術 的側面から効率化するためのものではなく,分析/設計段階における「非 アルゴリスミック (non-algorismic)」なオブジェクト指向アプローチがシ ステム開発に粛す恩恵のほうがより重要なのである
どの言語にも誕生の背景があり,言語構造及び記述形式 はその背景から創出される。言語に拡張機能を追加したところで,その言語の本質は容易に変更可能なものではない。
各言語の誕生の動機と再利用性
Simulaの動機はシミュレーション用の道具
Smalltalkの動機は 直感的なGUIツール
なので、「再利用性」などは全くメインの動機ではなかった
純粋なオブジェクト指向の目的にコードの再利用はなかった
C++やObject Pascalはコードの再利用を前提としてオブジェクト指向要素を取り入れたもの
引用された本
オブジェクト指向狂詩曲
オブジェクト指向開発の落とし穴
Object Oriented Analysis and Design with Applications
Multiple Viewsに関する詳細な説明がある
用語の意味
オブジェクトとは
「全体の一部分」という意味合いを捨てたもの
オブジェクトに役割を与えてはいかない
オブジェクトが「何かをする」のではなく、オブジェクトを「利用する」
オブジェクト指向プログラミングとは
オブジェクト指向開発とは
クラス指向プログラミング
創発特性
https://ja.wikipedia.org/wiki/創発
Emergent Properties
Responsibility-driven design
memo
「オブジェクト指向プログラミング」と「オブジェクト指向開発」という他義の単語が出てくる
前者は、後者の中の一つのステージ
大きく「オブジェクト指向開発」というものがあり、
それを実現するための手段の一つが「オブジェクト指向プログラミング」
本当にやりたいことをはオブジェクト指向開発であり、そのために何故オブジェクト指向プログラミングが必要になったのかを調べる