maya's blog

About programming, aws and ubuntu

Clean Architecture 第3章 読書メモ

Clean Architecture 達人に学ぶソフトウェアの構造と設計

Robrt C. Martin, 角征典, 高木正弘 著

ISBN-13: 978-4048930659

第Ⅱ部 構成要素から始めよ プログラミングパラダイム

  • 1938年 Alan Turingがコンピュータプログラミングの基礎を築いた
    • 1945年まで彼は「バイナリ」でプログラムを書いていた
  • 1940年 後半 アセンブラ誕生
  • 1951年 Grace Hopperがコンパイラ「A-0 system」を考案
  • 1953年 Fortranが考案
  • その後COBOL, PL/1, SNOBOL, C, Pascal, C++, Java, bla bla

  • プログラミングパラダイム…プログラミングの方法

  • 主に3つあり、どれも互いに似てない

第3章 パラダイムの概要

構造化プログラミング

  • 1968年 Edsger Wybe Dikstraが「構造化プログラミング」を発見
  • 構造化プログラミングは、直接的な制御の移行に規律を課すものである。

オブジェクト指向プログラミング

  • 1966年 Ole Johan DahlとKristen Nygaardが発見
  • オブジェクト指向プログラミングとは、間接的な制御の移行に規律を課すものである。

関数型プログラミング

  • 1936年 Alonzo Churchがラムダ計算を発明
  • 1958年 John McCarthyがラムダ計算を基礎にLISPを開発
  • 関数型プログラミングとは、代入に規律を課すものである。

考えるべきこと

  • これらのパラダイムは、何をすべきかを伝えるというよりも、何をすべきでないかを伝えている
    • 3つのパラダイムは我々からgoto文, 関数ポインタ, 代入を奪っている

まとめ