A Philosophy of Software Design, 2nd Edition (English Edition)

A Philosophy of Software Design, 2nd Edition (English Edition)

John K. Ousterhout

累計読者数9
平均ハイライト数 35.8件/人
star総合評価 81/100
start序盤集中型

この本について

開発していると、「このコード、なぜこんなに複雑なんだろう…」と手が止まる瞬間がけっこうあります。気になるところを直そうとすると別の場所まで巻き込まれたり、設計の“どこが悪いのか”がそもそも言語化できなかったり。自分もそのモヤモヤを抱えたまま仕事をしてきました。 この本は、その曖昧な違和感を「複雑さ」という軸で捉え直す視点をくれます。特に、複雑さを減らす方法は一つではなく、シンプルに削るか、見えないところに閉じ込めるかという二つのアプローチがある、という話が実感に近かったです。また、良い設計にも“やりすぎ”があるという前提で語られるので、極端な正解を押し付けられない安心感があります。さらに、コードレビューの場でどう使うと効果が出るのかが示されていて、抽象的な概念を日々の実務に落とし込みやすいのも助かりました。 「深いクラス」の考え方が腑に落ちたあたりで、自分がこれまで抱えていたユーザーインターフェイスと内部実装が妙に絡まり合う問題の理由がようやく言語化できました。作業の独立性が損なわれる理由を構造として理解できると、次にどこを直すべきかが見えてきます。 設計の判断で迷い続けているエンジニアには特に刺さる本だと思います。

analytics

読書インサイト

ハイライト密度

開始終了

多くの読者は第2章に最もインサイトを感じており、全ハイライトの44%が集中しています。

読書の順序

この本に似ている本

すべて見る arrow_right_alt
書籍情報(出版社紹介・目次)expand_more

出版社による紹介

"This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly and cheaply."--Amazon.
library_books似た本をもっと見るmap書籍マップで探すroute読書パスガイドauto_awesomeAI診断で次の1冊を探す

BookNotion をお使いの方へ

この本の指標は、あなたの本棚でも見られます

このページで見ている読者数・精読度・完走率は、あなた自身の本にも表示できます。BookNotion をお使いなら、下のリンクを開くだけで自分のデータが出ます(ログイン操作は不要です)。

読んだ内容を、もう忘れない。

BookNotion Zなら、Kindleのハイライトを自動で保存・整理。Notionにエクスポートして、いつでも振り返れます。

無料ではじめる

クレジットカード不要