Clean Architecture まとめ – 3
3 パラダイムの概要 構造化プログラミング オブジェクト指向プログラミング 関数型プログラミング 考えるべきこと 内容 プログラミングには、構造化プログラミング、オブジェクト指向プログラミング、関数型プログラミングの3つのパラダイムがあり、これらは良いアーキテクチャを作るための3つの関心事に関連しているため、概要を紹介する。 アーキテクチャの3つの関心事と3つのパラダイムの関連 コンポーネントの分離: オブジェクト指向プログラミング データ管理: 関数型プログラミング 機能: 構造化プログラミング 3つのパラダイムの要約 構造化プログラミング直接的な制御の移行に規律を課すものである。goto文の代わりに if/then/else や do/while/until に置き換えられた。 オブジェクト指向プログラミング間接的な制御の移行に規律を課すものである。参照を階層的に制御できることを発見し、各階層のローカル変数やインスタンスなどの概念が生まれ、ポリモーフィズムの発見にもつながった。 関数型プログラミング代入に規律を課すものである。ラムダ計算という不変性を概念にした計算により、代入文がない。 これら3つのパラダイムはできることが増やしたのではなく、「すべきでないこと」を伝えている。それは、「goto文」「関数ポインタ」「代入」の3つ。これら3つのすべきでないことを、規律を課すことによってできなくした。 学びを活かすアイディア・行動 今の所特になし