はじめに 動機 先日こんな記事を書きました。 ドメイン駆動設計と関数プログラミングをScalaで - Qiita ドメイン駆動設計と関数プログラミングをElixirで - Qiita Scala にしても Elixir にしても、純粋な関数型プログラミング言語ではなくて、オブジェクト指向の要素も取り入れたマルチパラダイムな言語だと思いますが、一方で旧来のオブジェクト指向な言語に関数型のパラダイムが入り込んできているという傾向 (map, reduce とかラムダとか) もあり、これから先も、両者が共に近づいてそれぞれのいいところを活かしながら発展し、ソフトウェア開発における生産性や変更容易性が上がっていくのかなぁと期待が膨らみます。 この記事では、関数型の何がいいのか、PHP + オブジェクト指向で書くにあたって、何か取り入れられるところはないか、という点について、ドメイン駆動設計のイディ
![PHPerがドメイン駆動設計と関数型プログラミングを学んで得たもの(前編) - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/158120daeb9ab533d676204b4b4303151901390e/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-1150d8b18a7c15795b701a55ae908f94.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTg0MCZoPTM4MCZ0eHQ2ND1VRWhRWlhMamdZempnNG5qZzZIamdxVGpnN1BwcDRibGk1WG9xSzNvcUlqamdhanBscUxtbGJEbG5vdmpnNWZqZzYzamdyRGpnNm5qZzVfamc3UGpnckRqZ3BMbHJhYmpncFBqZ2FmbHZwZmpnWl9qZ29MamdhNG81WW1ONTdlb0tRJnR4dC1jb2xvcj0lMjMzMzMmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTQmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWNlbnRlciUyQ21pZGRsZSZzPTRjNmY5NmZhNDdiN2IxNjNkNWZkMmUxNmZhZDdmYzk0%26mark-align%3Dcenter%252Cmiddle%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTg0MCZoPTUwMCZ0eHQ2ND1RRzUxYm5Wc2F3JnR4dC1jb2xvcj0lMjMzMzMmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NDUmdHh0LWFsaWduPXJpZ2h0JTJDYm90dG9tJnM9YTU2Y2RiOGVhMzgyOTk0YmEwZmYxYmRkNmE1ZDY1NTE%26blend-align%3Dcenter%252Cmiddle%26blend-mode%3Dnormal%26s%3D875eeee8168eafc6def56f698983e86d)