天の月

ソフトウェア開発をしていく上での悩み, 考えたこと, 学びを書いてきます(たまに関係ない雑記も)

オブジェクト指向のこころを読む会 Vol.6に参加してきた

yr-camp.connpass.com

こちらのイベントに参加してきたので、会の様子と感想を書いていこうと思います。

会の概要

タイトル通りオブジェクト指向のこころを読んでいくイベントです。

今日は特別回で、溜まっている練習問題をひたすら解いていきました。

会の様子

6章応用問題1

意味を説明してください、とありますが書かれているのが意味そのものなので問題文の通り、もしくはそれをただ言い換えするだけになってしまうね、という話をしました。

例としては、BFFが適切なのかな?という話が最初にありましたが、話をしているうちに、BFFをFacadeの抽象的概念として捉えるのは正しそうだけれども、BFFの具体的な実装パターンがFacadeで、BFFをFacadeというのは少し違いそうだと議論が出ました。

例としては、本にも書いている通り各機能単位で名前をつけられるようなことができるのはFacadeなのかな?という話になりました。

6章あなたの意見1

あくまでも既存機能を簡素化するものなので、使えないという結論になりました。

6章あなたの意見2

システムの利用状況を追跡したり、システムを交換することがメリットとして挙げられるという話になりました。

また、問題とは関係ありませんがkiroさんのスライドを見ながらストラングラーパターンの話と誤ったマイクロサービスの使い方(機能を小さくするためのマイクロサービス)の話をしていきました。

hub.attractor.co.jp

6章あなたの意見3

頻繁に起こるケースではないものの、社内システムであり(お金を払って利用しているユーザーがいない)、既存システムがあまりにもレガシー化している場合は新たなシステムを作成するかも知れないという話がありました。

6章あなたの意見4

Facadeの由来や意味を英英辞典で調べた結果、ふさわしい名前だという話になりました。特に大きな建物の一部というのはしっくり来るという話が出ていました。

7章応用問題1

相変わらず問題文そのものが意味なので、意味を聞かれても難しいという話になりました。

また、Adapterパターンは最終手段的に使うもので普段の開発で頻繁に使うようならコミュニケーションの取り方を見直したりしたほうがいいということで、例としてもあまり出てこないという議論をしていました。*1

7章応用問題2

これも参加者が全員ラップという言葉を知っていたので、そのままだねという話になりました。

7章応用問題3

簡素化するかどうかが違いだという話をしました。

全体を通した感想

初めて矢田さんと二人でゆっくりお話ができて楽しかったです。

二人ということでいつもよりぶっちゃけた話ができたり、Adapterパターンの利用方法に関して再確認ができたのは特に満足しました。

*1:自分が使う予定のオブジェクトを作っている開発者が自分のイメージと異なるインターフェースを作っている状況は突っ込みどころが多すぎる。また、使えると思ってもユースケースが異なる場合は既存のデータパターンの見直しが必要になったりして、Adapterパターンを使わずに1から作り直したほうが速い