設計

言語学のフィールドワークとしてのドメイン駆動設計 設計

言語学のフィールドワークとしてのドメイン駆動設計

この記事は、ChatGPTと自分の考えについて会話をした上で、ChatGPTに草稿を書いてもらったものです。(第二弾) ドメイン駆動設計(DDD)は、単なる技術的な設計手法ではなく、ドメインエキスパートの知識をソフトウェアに正確に反映するための深い探求のプロセスです。このプロセスは、言語学におけるフ…
私の理解するドメイン駆動設計 設計

私の理解するドメイン駆動設計

この記事は、ChatGPTと自分の考えについて会話をした上で、ChatGPTに草稿を書いてもらったものです。 なぜか会話してない部分についてまで、自分の意見に近いことを書いてくれており、驚いています。俺が過去に書いたブログ記事を読んだんだろうか? エリック・エヴァンスの『ドメイン駆動設計』は、私にと…
ソースコードの中のビジネスロジック 設計

ソースコードの中のビジネスロジック

ソストウェア設計の話の中で、ビジネスロジックというのは、ビジネスロジック以外の部分を省いたものであるというような言われ方をすることがあります。(ビジネスロジックという言葉が差す物が曖昧であることへの皮肉という面があると思います) 以前にビジネスロジックについて考察した記事を書いています。 ビジネスロ…
純粋なクラス 設計

純粋なクラス

今、『なっとく!関数型プログラミング』という本を読んでいます。関数型プログラミングの考え方として重要視される概念として「純粋関数」というものがあります。『なっとく!関数型プログラミング』の中で、以下のように書かれています。 純粋関数の定義 関数の戻り値は常に1つだけ 関数は引数にのみ基ずいて戻り値を…
巨人の肩から降りるとき 設計

巨人の肩から降りるとき

ソフトウェア界隈では、よく「巨人の肩に乗る」という比喩表現が使われます。 「巨人の肩に乗る」というメタファーはフリーソフトウェア運動を推進しその正当性を示すためにも用いられる。 レッドハットのボブ・ヤングは2002年の著書『リチャード・ストールマンと自由ソフトウェア革命(英語版)』で、人々が巨人の肩…