6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SmalltalkAdvent Calendar 2018

Day 7

Smalltalk-72がちょっと分かってきたので、改めて「オブジェクト指向プログラミングとは何か」をできるだけ簡潔に

Last updated at Posted at 2018-12-09

もとより、

「オブジェクト指向」は全く別の2つのアイデアの同音異義語

で良いような気もするのですが、これだとようやく自分の中で“折り合い”をつけた人たちをひどく混乱させてしまうみたいなので、


クラスやインターフェースを使ってデータ型を定義するアイデア(決定は早い方が好まれる)と、メッセージを使って決定をできるだけ先送りするアイデア(データ型や中身をどうするかはあまり気にしない)という相反する2つの側面が同居している考え方。

当然、両側面を同時に突き詰めると矛盾が生じるので、局面によって適宜、都合のよい方に寄せるなどの運用上の工夫が必要。

というように、ワンクッションおくとどうだろうか…という思いつきです。^^;


 オブジェクト指向についてもう少し詳しくは、こちらの冒頭のテンプレをご参照ください。


 Smalltalk-72 については、一部機能が制限&「Smalltalk-72 Reference Manual (PDF)」が対象にする実装(バージョン)とのあいだに齟齬があるため読み替え等のある種のスキルが必要ですが、こちらで気軽に遊べます。ぜひ、お試しあれかし。

 GitHub も使える ようになるまで進化(?)した Pharo などに代表される今の Smalltalk とはずいぶん勝手が違うのでこの点もお楽しみください。

6
3
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?