Scalaの現場から学ぶ設計:座談会 / genba sekkei vol 2
by
集約のエンティティ
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
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が身近になっている事例があれば