Clean Architecture 第2章〜第3章

(この記事は前回の続きです)

さて、今回も元気に読みつつ、うまく進めて行きましょう!:)

ソフトウェアは、「振る舞い」と「構造」、両方を維持する必要があるが、ほとんどの場合どちらかにフォーカスしがちだという。耳につまされる話だ。特に自分の場合、元々挙動、つまり振る舞いにフォーカスしてきた方だが、場合によってはかなりトリッキーな修正をえいやっとやってきた過去がないとはいえない。(タイミングと要求のせめぎ合い、つらたんですね。。。)

ここでアイゼンハワーのマトリクスを持ち出して、振る舞いの価値は緊急、アーキテクチャの価値は重要と定義している。これは凝り固まった頭をほぐす体操にもってこいだ。

そして、ソフトウェアアーキテクトである以上、簡単に開発、変更、拡張がし続けられるよう懸命に闘う必要があると説いている。そうなのだ。経営がわかってないとか甘えでしかないし、懸命に立ち回るしかない。実際エンジニアになってみて、こんなに政治もどきが必要なのかと少々落胆したのを覚えている。

第3章から第Ⅱ部となるのだが、ここでプログラミングのパラダイムが紹介されている。1938年にアラン・チューリングがすでにループや分岐など、プログラミングの基本的な考え方を編み出していることは改めて驚きだ。そしてFortranは1953年というのも驚き。今でもたまに見聞きする言語が約70年前、、ロマンある話だ。

そして現代で重要なパラダイム概念が3つ紹介されている。「構造化プログラミング」「オブジェクト指向プログラミング」「関数型プログラミング」である。詳しい説明は次回以降の章での解説に譲るが、重要なことは何をすべきでないかを規定しているのである。しかもなんと、このパラダイムは1958年から68年の10年間で発見されているのである。いろんな言語やフレームワークが進化したり生まれたりしているが、基本はこの頃から変わっていないというのはすごい世界である。

筆者は比較的すでにリリース後のシステムの改善などに携わってきたため、基本は抑えつつもある種感覚でやっているところがある。この章まで読んで、改めてちゃんと基礎的な考え方を再インストールしつつ、構造にしっかり目を向けて行きたいと思った。

クリーンな航海はまだまだ続く・・・(そしてコロナはいつまで続くのだろうか、、、)

続きはこちら

この記事が気に入ったらサポートをしてみませんか?