Scalaの現場から学ぶ設計:座談会 / genba sekkei vol 2
by
集約のエンティティ
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
Scalaの現場から学ぶ 設計 座談会 2022.03.19
Slide 2
Slide 2 text
No content
Slide 3
Slide 3 text
本セッションについて ● アルプは社内で定期的に設計についての相談会を実施 ● 今回はScalaMatsuriのバーチャルブースを借りて相談会の出張版となります ● 質問やコメントはDiscordの #alp-雑談と実況 チャンネルにご投稿ください ● ツイッターのハッシュタグ #genba_sekkei もご利用ください
Slide 4
Slide 4 text
今日のテーマ オブジェクト指向(OOP)と関数型(FP)について
Slide 5
Slide 5 text
アルプにおけるOOPとFP ● アルプではScalaでOOPをしっかりやっている ○ DDDにも注力している ● 同時にFPのエッセンスもプロダクトに取り入れている ○ 一番の具体例は Eff ● アルプでのFP ○ 静的型付き言語の表現力を上げるために使っている ○ 可読性を上げるためのアーキテクチャの一部 相談(トークテーマ) ● 設計の観点で、どういうときにFP(OOP)の要素が役に立つか ● こう使うと可読性が上がるよね、などの言語化
Slide 6
Slide 6 text
OOPとFPの対立 ● OOPとFPは対比して語られることが多い ○ 部分的には相反しているかもしれないけど ○ 全てが相反しているわけではない ● ステートレスなOOPはOOPではないのか? ○ そんなはずはない ● 相反していないから、部分的に共存できる ○ 両方の要素を実用的に取り入れている Scalaいいよね 相談(トークテーマ) ● 双方のいいところを両取りしていくには ● 何が相反していて、何が相反していないのか
Slide 7
Slide 7 text
2022年のFP ● FPはどうしても難しい話から入ってしまいがち ○ 高階関数、モナド、モナトラ ● アルプではあまり意識せずにFPのエッセンスを使えている ○ モナドがわからなくても for式で合成してくれる便利な道具( Eff)がある ● 他社の事例にもそういう流れはないのだろうか ○ FPが実は身近になっている説 相談(トークテーマ) ● FPが身近になっている事例があれば