クラウドネイティブ時代のオブジェクト指向について考える by すえなみ

Object-Oriented Conference 2024
ロングセッション(40分)

クラウドネイティブ時代のオブジェクト指向について考える

a_suenami すえなみ a_suenami
3

オブジェクト指向のひとつの潮流である抽象データ型をベースとする考え方は、データとそれに関連するロジックを一体化し、ユーザー定義型として利用するアプローチを示します。これはモジュール機構と型システムの融合、あるいはモジュールの第一級オブジェクト化として捉えることができます。

他方、それによって実装されたアプリケーションを稼働させるインフラに関しては、クラウドネイティブ技術の進展に伴い、Docker や Kubernetes を使用してコンテナベースの運用をすることは以前に比べて一般的になりました。

本セッションでは、このようなクラウドネイティブ環境において、抽象データ型をベースとするオブジェクト指向を再定義できないかという観点から考察をしてみます。

型の定義は Open API に代表されるような API スキーマに、カプセル化されたオブジェクトはコンテナに、そしてオブジェクト間のインタラクションは API コールやイベント駆動アーキテクチャを介して行われると考えることができ、言語機能であるかシステムアーキテクチャであるかという違いはあれど、かなり類似性は高いと言えます。

また、このような整理によって、オブジェクト指向のもうひとつの潮流であったメッセージベースの考え方にも焦点を当てることができると考えています。サービスディスカバリによる実装詳細の隠蔽やジョブキューやメッセージブローカーを用いたイベント駆動アーキテクチャはメッセージパッシングに他ならないと考えており、こちらに関しても、オブジェクト指向の考え方を言語機能ではなくシステムアーキテクチャとして捉え直してみます。

このセッションは、伝統的なオブジェクト指向の考え方を知っていて、かつ、クラウドネイティブ技術を使った運用を実践している、あるいは興味を持つエンジニアのみなさんに聞いていただくとともに、一緒に議論や考察を深めていきたいと思います。クラウドネイティブ時代におけるオブジェクト指向の進化とその将来について、一緒に探求しましょう。