2022-06-01から1ヶ月間の記事一覧
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com Abe Kaisei github.com 第4章 OOPは無駄を省いて整理整頓するプログラミング技術 ポイント OOPの基本的な仕組み 以前と比べどこが優れているのか OOPが持つ構造化言語にはない3つの仕組み…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com Abe Kaisei github.com 第3章 OOPを理解する近道はプログラミング言語の歴史あり ポイント OOP以前のプログラミング言語の歴史 OOPがなぜ必要になったか OOPは必然性を持って登場した 機械…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com Abe Kaisei github.com 第2章 オブジェクト指向と現実世界は似て非となるもの オブジェクト指向を現実世界に対比して説明する OOPの三大要素(仕組み) クラス(カプセル化) ポリモーフィ…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com Abe Kaisei github.com まえがき 旧版と比べて第3版の変更点 「オブジェクト指向がなぜ難しいのか」をより客観的な視点で説明することに注力するようになった 引用:オブジェクト指向でなぜ…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第9章費用対効果の高いテストを設計する 変更可能なコードを書く為の3つのスキル オブジェクト指向設計の理解 コードのリファクタリングスキル リファクタリングとは、ソフトウェアの外部…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第8章コンポジションでオブジェクトを組み合わせる コンポジションとは 組み合わされた全体が、単なる部品の集合以上となるように、個別の部品を複雑な全体へと組み合わせる(コンポーズす…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第7章モジュールでロールの振る舞いを共有する 継承で解決できない問題 例えば、2つのサブクラスに共通する性質を組み合わせする際、単純な継承では解決できない 上記の場合、継承の手法を…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第6章継承によって振る舞いを獲得する オブジェクト指向設計の振り返り 適切に設計されたアプリケーションは、再利用可能なコードから構成されます。最小限のコンテキストと明確なインター…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第5章ダックタイピングでコストを削減する はじめに オブジェクト指向設計の目的は変更にかかるコストを下げることです。メッセージが設計の中心にあることはもうご存じのことだと思います…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第4章 柔軟なインターフェースをつくる オブジェクト指向アプリケーションは単なるクラスの集まりではなく、メッセージによって定義されている オブジェクト間で受け渡されるメッセージに…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第3章依存関係を管理する オブジェクトに望まれる振る舞い オブジェクト自身が知っている 継承している メッセージを理解するほかのオブジェクトを知っている ここで言う振る舞いは、クラ…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第2章 単一責任のクラスを設計する 単一責任のクラスをどのように扱うべきか クラスが「シンプルであれと主張すること」が大切である クラスは「いますぐに」求められる動作を行い、後にも…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 第1章オブジェクト指向設計 世界は手続き的な一方で、オブジェクト的でもある オブジェクトとは、もの・実態 オブジェクト指向ソフトウェアの設計では、世界をオブジェクト間の自発的な相…
輪読会メンバー Izumi Haruya github.com Sekine Yutaro github.com 本書を読む目的 各メンバーがエンジニアとして働き始める中で個別の言語を習得することになった。(C#, Java など) それらの共通項として、オブジェクト指向言語という特性があった。かつ、…