オブジェクト指向(メッセージ指向)を知っていますか? by takasek

Object-Oriented Conference 2020
ロングセッション

オブジェクト指向(メッセージ指向)を知っていますか?

takasek takasek takasek
8

オブジェクト指向プログラミングといえば、「継承・カプセル化・ポリモーフィズムで成り立つやつでしょ?」と思われがちです。
クラスという言語機能によりデータとふるまいを定義し、インスタンス化し組み合わせ、可能ならば静的型検査による早期エラー発見を行うプログラミングパラダイム。父の名はビャーネ・ストラウストラップ。
そうですね、その認識は間違っていません。OOCの多くのセッションでは、クラス指向のオブジェクト指向の背景や技法、実践例について詳らかに語られることになります。

しかしそれとは根本的に違う、もうひとつの「オブジェクト指向」があることをご存知でしょうか?
いえ、「もうひとつの」という形容ではあまりに不十分かもしれません。「オブジェクト指向」という言葉は、最初にアラン・ケイが提唱したときには、こちらの「メッセージ指向」のことを指していたのですから。

本セッションは、以下のような内容で構成されます。

  • メッセージ指向のコンセプトの紹介
  • Smalltalk-72の実践
  • 同じAppleプラットフォーム上で動作し互換性のある2言語による実装の比較
     - Objective-C: メッセージ指向
     - Swift: クラス指向の側面が強い
  • 現代のプロダクトでのメッセージ指向のコンセプトの適用例
     - アクター理論などの紹介
     - 実例のデモ

■FAQ
Q. オブジェクト指向(プロトタイプベース)は知っていますか?
A. いえ…。
Q. Swiftをクラス指向というと語弊があるのでは?
A. その話は https://fortee.jp/object-oriented-conference-2020/proposal/dc44aa41-7c73-4eaf-af35-2655afb52d9a でやりましょうか。