Розмір відео: 1280 X 720853 X 480640 X 360
Показувати елементи керування програвачем
Автоматичне відтворення
Автоповтор
DDDは難しいですよね…結局APIはトランザクションスクリプトで書いて、なんちゃってレイヤードアーキテクチャみたいなので書くのが一般的かなぁと思いました。
まじか、ドメイン駆動設計の本買ってしまった
一つ質問があります!dddみたいな概念が無いとすると、結構宗教戦争みたいな事になるのではないかと思うのですが、コードの設計で開発者同士で意見がぶつかったときにどうやって話しあって解決していってるんでしょうか??
コードレビューの中でチーム内やリーダーが決める感じです。
結論としてDDDを知らなくてもソフトウェアエンジニアとして仕事ができることは同じですが、失礼ながらDDD自体の説明はミスリーディングだと感じましたし、おそらく酒井さんはエヴァンス本を読んでいないのではないでしょうか。DDDはアカデミックよりも実務志向のものですし、根幹にあるのはビジネス要件をどのようにコードに落とし込むのかということです。プラクティスとしてのValue-ObjectパターンやCQRSは言語や技術スタックに依存するので忠実に使われるケースは多くないですが、DDDそのものはジェネラルでどのような形で実践されるかを問わないです。(例えばアジャイルでプランニングポーカーを使ってるところなんて少ないからアジャイルはあまり必要がない、といっているようなものです)
要するにオブジェクト指向をきちんとやれば自然とそうなると言う話ですよね。学術的に名前を知るか否かではなくて。DDDと呼ばないだけで変更容易性、凝集性は普通に理解してるぞならば、プログラムを覚えるときに名前はどうでもいいから知っておく必要があると。マウントをとってるとメタにマウントをとられましたね。
私もそう思います!
オブジェクト指向の理解について、シリコンバレーでは、どの程度求められるものなのでしょうか。オブジェクト指向で作られていないシステムを改善するべく、デザインパターンやDDDの手法を用いることが多いです。
自然とみなさん常識で使ってますよー。
エリックエヴァンスの言い回しというか設計思想は魅力的に見えます。本自体もGOFのデザインパターン知ってて当然、オブジェクト指向の原則がスラスラ出てくるような人じゃないと読みこなせないと思います。DDDに影響されてるんだろうなというなんちゃってSEはいっぱいいますね
確かに!
DDD云々カンヌンより、最終的に全部一緒って悟りました
知っといて特に損はない知識だと思いますが、現実的にはその理論だけでシステム構築するのはかなり難しい。あまりこういう理論ガチガチで設計すると、読みにくいコードになったりメンテや機能追加、またテストがしにくくなってしまいます。そういう系の本とかで使われている例はあまりにも単純なのもやはり学問としての知識がベースという感じですね。
確かに。知ってて損はないとう感じですね!
築地の丼物 サンフランシスコ店 5:21
美味しそうですね。
DDDは一つの設計思想・方法論なんですよね。なので絶対的な存在ではないし、独自に同等かそれ以上のものを編み出している人もいると思います。DDDはオブジェクト指向を主に使っていくので、DDDで言われてる事ってオブジェクト指向で言われてる事と同じと言われる事からも、数ある方法の一つにDDDと名前がついていると言えます。その中身については、細かい点では異論もあるとは思いますが、概ね良いやり方がまとめられていると思います。私は、DDDの立ち位置としては、オブジェクト指向という大きな分野の中で、少なくとも日本では一定の存在感を獲得している一つの要素であると捉えています。確かにDDDに囚われすぎては良くないとは思いますが、オブジェクト指向のパラダイムの中で開発をしていくなら、あえて避けるものではないのではと動画を見ていて思いました。オブジェクト指向分野の一部として触れて、自分の経験と組み合わせて取り入れていく接し方が良いのではと考えます。
それも良いと思います。
DDDは知っていれば損はないけど、知らなければいいプログラマになれないわけじゃないことを、シリコンバレーの状況を交えて伝えてくれる。そうやって酒井さんはいつも視聴者を安心させて、どんどん挑戦する気にさせてくれる。挑戦して得た経験の方がDDDよりも断然役に立つことを気づかせてくれる。
確かにやってみることですよね!
半分、いや7割同意です。DDDをやったことありますが、WEBの解説や本だけじゃ絶対分からないですね。実際の現場でコード書いてアウトプットしないと分からない。私の場合は、DDDいいね、と思うのに半年かかりました。それまではおっしゃる通りアカデミックでインテリ気取りな思想のような印象でした。いまでも7割そう思いますが。DDDのメリットは業務ロジックをドメイン(ユースケース、動画の例だと航空チケット予約という一要件)の単位で設計実装するので、コードは格段に綺麗かつスマートになります。DDDを知らないと、そうやってるつもりでもDDD経験ありから見るとかなり汚く見える、というのは体験からありました。そのメリットはシステムが大きいほど増すと思いました。一例としてクラス設計ではdto,value object,entityの使い分けあたりでも大きく差が出ると思いました。ご参考までに。
私も実際にコードを書いてからDDDの説明をみて理解できた感じです!
DDDは現実のビジネス用語を用いて設計、プログラミングを行う手法でコードをきれいに書くみたい話はDDDを達成するのに必要条件であるからであってそれが本質ではない。いくらコードをキレイに書こうが、システムが存在する本質を理解できないと手戻りが発生するんだよね。経験でどうにかなるみたいな話をしているけど、それをすべて言語化した上で、技術書になっているんだから勉強しない選択肢が存在することが不思議だよね。プログラミング勉強し始めて4年目(ウェブは2年目)だけどシリコンバレーエンジニアよりももっと本質的なものが見えていると思うと嬉しいね。
デザインパターンの話と言い大変参考になります。
ありがとうございます!
ありがとうございました。日本だとSierなどスキルがバラバラの人がいるところで、マネジメントする人が知っておくと良いのかな。と思いました。何より実際にコードを書くか、オープンソースのコードを参考にする方がためになりそうですね。
私もそうだと思います!
ありがとうございます。無駄な人生歩まなくてすみました。
昨今、マイクロソフトはDDDをPDFにまとめてます。ぱっと見、三層構造でシンプルで好感が持てます。後出しジャンケンであればリファインされて当然ですが、感想をお聞かせ願えれば幸いです。
結論から話してほしい。
すいません。。。
DDD批判ですねw
DDDは難しいですよね…
結局APIはトランザクションスクリプトで書いて、なんちゃってレイヤードアーキテクチャみたいなので書くのが一般的かなぁと思いました。
まじか、ドメイン駆動設計の本買ってしまった
一つ質問があります!
dddみたいな概念が無いとすると、結構宗教戦争みたいな事になるのではないかと思うのですが、コードの設計で開発者同士で意見がぶつかったときにどうやって話しあって解決していってるんでしょうか??
コードレビューの中でチーム内やリーダーが決める感じです。
結論としてDDDを知らなくてもソフトウェアエンジニアとして仕事ができることは同じですが、失礼ながらDDD自体の説明はミスリーディングだと感じましたし、おそらく酒井さんはエヴァンス本を読んでいないのではないでしょうか。DDDはアカデミックよりも実務志向のものですし、根幹にあるのはビジネス要件をどのようにコードに落とし込むのかということです。プラクティスとしてのValue-ObjectパターンやCQRSは言語や技術スタックに依存するので忠実に使われるケースは多くないですが、DDDそのものはジェネラルでどのような形で実践されるかを問わないです。(例えばアジャイルでプランニングポーカーを使ってるところなんて少ないからアジャイルはあまり必要がない、といっているようなものです)
要するにオブジェクト指向をきちんとやれば自然とそうなると言う話ですよね。
学術的に名前を知るか否かではなくて。
DDDと呼ばないだけで
変更容易性、凝集性は普通に理解してるぞならば、
プログラムを覚えるときに名前はどうでもいいから知っておく必要があると。
マウントをとってるとメタにマウントをとられましたね。
私もそう思います!
オブジェクト指向の理解について、シリコンバレーでは、どの程度求められるものなのでしょうか。
オブジェクト指向で作られていないシステムを改善するべく、デザインパターンやDDDの手法を用いることが多いです。
自然とみなさん常識で使ってますよー。
エリックエヴァンスの言い回しというか設計思想は魅力的に見えます。本自体もGOFのデザインパターン知ってて当然、オブジェクト指向の原則がスラスラ出てくるような人じゃないと読みこなせないと思います。DDDに影響されてるんだろうなというなんちゃってSEはいっぱいいますね
確かに!
DDD云々カンヌンより、最終的に全部一緒って悟りました
知っといて特に損はない知識だと思いますが、現実的にはその理論だけでシステム構築するのはかなり難しい。あまりこういう理論ガチガチで設計すると、読みにくいコードになったりメンテや機能追加、またテストがしにくくなってしまいます。そういう系の本とかで使われている例はあまりにも単純なのもやはり学問としての知識がベースという感じですね。
確かに。知ってて損はないとう感じですね!
築地の丼物 サンフランシスコ店 5:21
美味しそうですね。
DDDは一つの設計思想・方法論なんですよね。なので絶対的な存在ではないし、独自に同等かそれ以上のものを編み出している人もいると思います。
DDDはオブジェクト指向を主に使っていくので、DDDで言われてる事ってオブジェクト指向で言われてる事と同じと言われる事からも、数ある方法の一つにDDDと名前がついていると言えます。その中身については、細かい点では異論もあるとは思いますが、概ね良いやり方がまとめられていると思います。
私は、DDDの立ち位置としては、オブジェクト指向という大きな分野の中で、少なくとも日本では一定の存在感を獲得している一つの要素であると捉えています。
確かにDDDに囚われすぎては良くないとは思いますが、オブジェクト指向のパラダイムの中で開発をしていくなら、あえて避けるものではないのではと動画を見ていて思いました。オブジェクト指向分野の一部として触れて、自分の経験と組み合わせて取り入れていく接し方が良いのではと考えます。
それも良いと思います。
DDDは知っていれば損はないけど、知らなければいいプログラマになれないわけじゃないことを、シリコンバレーの状況を交えて伝えてくれる。
そうやって酒井さんはいつも視聴者を安心させて、どんどん挑戦する気にさせてくれる。挑戦して得た経験の方がDDDよりも断然役に立つことを気づかせてくれる。
確かにやってみることですよね!
半分、いや7割同意です。DDDをやったことありますが、WEBの解説や本だけじゃ絶対分からないですね。実際の現場でコード書いてアウトプットしないと分からない。私の場合は、DDDいいね、と思うのに半年かかりました。それまではおっしゃる通りアカデミックでインテリ気取りな思想のような印象でした。いまでも7割そう思いますが。
DDDのメリットは業務ロジックをドメイン(ユースケース、動画の例だと航空チケット予約という一要件)の単位で設計実装するので、コードは格段に綺麗かつスマートになります。DDDを知らないと、そうやってるつもりでもDDD経験ありから見るとかなり汚く見える、というのは体験からありました。そのメリットはシステムが大きいほど増すと思いました。
一例としてクラス設計ではdto,value object,entityの使い分けあたりでも大きく差が出ると思いました。
ご参考までに。
私も実際にコードを書いてからDDDの説明をみて理解できた感じです!
DDDは現実のビジネス用語を用いて設計、プログラミングを行う手法でコードをきれいに書くみたい話はDDDを達成するのに必要条件であるからであってそれが本質ではない。
いくらコードをキレイに書こうが、システムが存在する本質を理解できないと手戻りが発生するんだよね。経験でどうにかなるみたいな話をしているけど、それをすべて言語化した上で、技術書になっているんだから勉強しない選択肢が存在することが不思議だよね。プログラミング勉強し始めて4年目(ウェブは2年目)だけどシリコンバレーエンジニアよりももっと本質的なものが見えていると思うと嬉しいね。
デザインパターンの話と言い大変参考になります。
ありがとうございます!
ありがとうございました。
日本だとSierなどスキルがバラバラの人がいるところで、マネジメントする人が知っておくと良いのかな。と思いました。
何より実際にコードを書くか、オープンソースのコードを参考にする方がためになりそうですね。
私もそうだと思います!
ありがとうございます。
無駄な人生歩まなくてすみました。
昨今、マイクロソフトはDDDをPDFにまとめてます。ぱっと見、三層構造でシンプルで好感が持てます。後出しジャンケンであればリファインされて当然ですが、感想をお聞かせ願えれば幸いです。
結論から話してほしい。
すいません。。。
DDD批判ですねw