「カプセル化、多態、継承」とされるオブジェクト指向の三大要素が持つ価値観が揺らいでいます。特に「継承より委譲」の考え方が注目を集める中、GoやRustなどのクラスがない言語が台頭しています。
このセッションでは、三大要素を「カプセル化、多態、委譲」に変更して、その新しい枠組みでのプログラミングの有用性を考えます。GoやRustがなぜ注目されているのか、JavaScript/TypeScriptでクラスを避けるメリットなど、具体的な言語とテクニックなどを交えて議論します。
最終的には、メソッドが持つ関数型の要素を取り入れることで、クラスに依存しないプログラミングが可能であるとの結論を導きます。この流れを理解することで、関数型プログラミングとオブジェクト指向が結びつく点とその有用性を考察します。