Enviar búsqueda
Cargar
ちいさなオブジェクトでドメインモデルを組み立てる
•
77 recomendaciones
•
15,024 vistas
増田 亨
Seguir
ドメイン駆動設計やるならスモールオブジェクトプログラミング。オブジェクト指向の設計・実装の基本スタイル。
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 26
Descargar ahora
Descargar para leer sin conexión
Recomendados
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718
Mao Ohnishi
ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方
増田 亨
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
増田 亨
ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀
増田 亨
Recomendados
3週連続DDDその1 ドメイン駆動設計の基本を理解する
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
ドメイン駆動設計の捉え方 20150718
ドメイン駆動設計の捉え方 20150718
Mao Ohnishi
ドメインオブジェクトの見つけ方・作り方・育て方
ドメインオブジェクトの見つけ方・作り方・育て方
増田 亨
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
増田 亨
ドメイン駆動設計という仕事の流儀
ドメイン駆動設計という仕事の流儀
増田 亨
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
ドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDD
増田 亨
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
Yoji Kanno
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
増田 亨
ドメイン駆動設計入門
ドメイン駆動設計入門
Takuya Kitamura
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
オブジェクト指向できていますか?
オブジェクト指向できていますか?
Moriharu Ohzu
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
増田 亨
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
増田 亨
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
増田 亨
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
増田 亨
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2
増田 亨
ドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイル
増田 亨
ドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドライン
増田 亨
技術者の働き方/ リモートワークという働き方 powered byドメイン駆動設計
技術者の働き方/ リモートワークという働き方 powered byドメイン駆動設計
GuildWorks
現場コーチから見えてきた越境する現場の3つの特徴
現場コーチから見えてきた越境する現場の3つの特徴
GuildWorks
Más contenido relacionado
La actualidad más candente
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
ドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDD
増田 亨
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
Yoji Kanno
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
増田 亨
ドメイン駆動設計入門
ドメイン駆動設計入門
Takuya Kitamura
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
オブジェクト指向できていますか?
オブジェクト指向できていますか?
Moriharu Ohzu
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
増田 亨
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
増田 亨
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
増田 亨
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
増田 亨
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2
増田 亨
ドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイル
増田 亨
ドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドライン
増田 亨
La actualidad más candente
(20)
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 の 実践 Part3 DDD
ドメイン駆動設計 の 実践 Part3 DDD
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
ドメイン駆動設計入門
ドメイン駆動設計入門
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向プログラミングのためのモデリング入門
オブジェクト指向できていますか?
オブジェクト指向できていますか?
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計 コアドメインを語り合ってみよう
ドメイン駆動設計 コアドメインを語り合ってみよう
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
ドメイン駆動設計の正しい歩き方
ドメイン駆動設計の正しい歩き方
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計(DDD)の実践Part2
ドメイン駆動設計という設計スタイル
ドメイン駆動設計という設計スタイル
ドメインオブジェクトの設計ガイドライン
ドメインオブジェクトの設計ガイドライン
Destacado
技術者の働き方/ リモートワークという働き方 powered byドメイン駆動設計
技術者の働き方/ リモートワークという働き方 powered byドメイン駆動設計
GuildWorks
現場コーチから見えてきた越境する現場の3つの特徴
現場コーチから見えてきた越境する現場の3つの特徴
GuildWorks
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
増田 亨
データベース設計徹底指南
データベース設計徹底指南
Mikiya Okuno
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
Masahiro Nishimi
越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる
増田 亨
Destacado
(6)
技術者の働き方/ リモートワークという働き方 powered byドメイン駆動設計
技術者の働き方/ リモートワークという働き方 powered byドメイン駆動設計
現場コーチから見えてきた越境する現場の3つの特徴
現場コーチから見えてきた越境する現場の3つの特徴
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
データベース設計徹底指南
データベース設計徹底指南
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
越境する情シス:進化可能なアーキテクチャを手に入れる
越境する情シス:進化可能なアーキテクチャを手に入れる
Similar a ちいさなオブジェクトでドメインモデルを組み立てる
DDD 20121106 SEA Forum November
DDD 20121106 SEA Forum November
増田 亨
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
PHPフレームワーク入門
PHPフレームワーク入門
Sho A
Software Development with Symfony
Software Development with Symfony
Atsuhiro Kubo
【18-C-4】Google App Engine - 無限の彼方へ
【18-C-4】Google App Engine - 無限の彼方へ
Developers Summit
Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方
一希 大田
復習も兼ねて!C#6.0-7.0
復習も兼ねて!C#6.0-7.0
Yuta Matsumura
次世代DaoフレームワークDoma
次世代DaoフレームワークDoma
Toshihiro Nakamura
VSUG Day 2010 Summer - Using ADO.NET Entity Framework
VSUG Day 2010 Summer - Using ADO.NET Entity Framework
Atsushi Fukui
「エクストリームエンジニアへの道(Swift編)」
「エクストリームエンジニアへの道(Swift編)」
tech-arts
Ruby on Rails 入門
Ruby on Rails 入門
Yasuko Ohba
クラウド・アプリケーション・モデリングへのアプローチ
クラウド・アプリケーション・モデリングへのアプローチ
Tomoharu ASAMI
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
Masayuki Kanou
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
Recruit Technologies
分割と整合性と戦う
分割と整合性と戦う
Yugo Shimizu
Apexコアデベロッパーセミナー070726 配布用
Apexコアデベロッパーセミナー070726 配布用
stomita
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計する
増田 亨
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
Databasedesignforsocialgames 110115195940-phpapp02
Databasedesignforsocialgames 110115195940-phpapp02
hideki hasegawa
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るために
Atsuhiro Kubo
Similar a ちいさなオブジェクトでドメインモデルを組み立てる
(20)
DDD 20121106 SEA Forum November
DDD 20121106 SEA Forum November
ドメインロジックの実装方法とドメイン駆動設計
ドメインロジックの実装方法とドメイン駆動設計
PHPフレームワーク入門
PHPフレームワーク入門
Software Development with Symfony
Software Development with Symfony
【18-C-4】Google App Engine - 無限の彼方へ
【18-C-4】Google App Engine - 無限の彼方へ
Windows ストア アプリの上手な作り方
Windows ストア アプリの上手な作り方
復習も兼ねて!C#6.0-7.0
復習も兼ねて!C#6.0-7.0
次世代DaoフレームワークDoma
次世代DaoフレームワークDoma
VSUG Day 2010 Summer - Using ADO.NET Entity Framework
VSUG Day 2010 Summer - Using ADO.NET Entity Framework
「エクストリームエンジニアへの道(Swift編)」
「エクストリームエンジニアへの道(Swift編)」
Ruby on Rails 入門
Ruby on Rails 入門
クラウド・アプリケーション・モデリングへのアプローチ
クラウド・アプリケーション・モデリングへのアプローチ
20100324 勉強会資料(ドメイン駆動)
20100324 勉強会資料(ドメイン駆動)
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
分割と整合性と戦う
分割と整合性と戦う
Apexコアデベロッパーセミナー070726 配布用
Apexコアデベロッパーセミナー070726 配布用
ドメイン駆動設計 分析しながら設計する
ドメイン駆動設計 分析しながら設計する
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Databasedesignforsocialgames 110115195940-phpapp02
Databasedesignforsocialgames 110115195940-phpapp02
Symfony2でより良いソフトウェアを作るために
Symfony2でより良いソフトウェアを作るために
Más de 増田 亨
ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
増田 亨
事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述
増田 亨
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
増田 亨
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
増田 亨
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル
増田 亨
ソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考える
増田 亨
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
増田 亨
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
ビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かう
増田 亨
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
増田 亨
DDD sample code explained in Java
DDD sample code explained in Java
増田 亨
アジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指して
増田 亨
ドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かす
増田 亨
SoR 2.0 summary
SoR 2.0 summary
増田 亨
毎日が越境だ!
毎日が越境だ!
増田 亨
SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築
増田 亨
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
増田 亨
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
増田 亨
Más de 増田 亨
(18)
ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
事業活動モデル・システム機能モデル・ビジネスロジックの記述
事業活動モデル・システム機能モデル・ビジネスロジックの記述
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル
ソフトウェア設計の学び方を考える
ソフトウェア設計の学び方を考える
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
レガシーコードの複雑さに立ち向かう~ドメイン駆動設計のアプローチ
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
ビジネスルールの複雑さに立ち向かう
ビジネスルールの複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
ソフトウェアの核心にある複雑さに立ち向かう
DDD sample code explained in Java
DDD sample code explained in Java
アジャイルなソフトウェア設計を目指して
アジャイルなソフトウェア設計を目指して
ドメイン駆動設計をゲーム開発に活かす
ドメイン駆動設計をゲーム開発に活かす
SoR 2.0 summary
SoR 2.0 summary
毎日が越境だ!
毎日が越境だ!
SoR 2.0 基幹システムの再定義と再構築
SoR 2.0 基幹システムの再定義と再構築
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計とは何か 【入門編】
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
ドメイン駆動設計の基礎知識:設計のスタイル、開発のスタイル
Último
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Último
(8)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
ちいさなオブジェクトでドメインモデルを組み立てる
1.
ドメイン駆動設計やるなら スモールオブジェクトプログラミング
小さなオブジェクトで ドメインモデルを組み立てる 豆ナイト : ドメイン居酒屋~モデル駆動プログラミングの集い 2012年10月26日 有限会社 システム設計 増田
2.
Domain-Driven Design (DDD)
ドメイン駆動設計
3.
ドメイン駆動
興味を持つ 利用者の やりたい事 会話する モデルで仮説 コードで実験
4.
ドメインモデルの開発 部品探しの旅
イテレーティブで発見的な活動 モデリング プログラミング リファクタリング
5.
利用者のやりたい事の粒度
会員登録で メールアドレスが必要。 アドレス形式チェック。 存在しないアドレスを拒否。 フリーメールは不可。 拒否するフリーメールのドメインリスト。 Biglobe はサブドメイン方式。 携帯メールも不可。 個々の関心事を小さな部品で表現する やりたい事の追加や変更=部品の追加・入替え
6.
業務の概念の粒度 日付 (時分秒を持たない)
金額 管理番号,登録番号 時分(秒を持たない) 単価 取引先コード 翌営業日, 休前日 数量,数量単位,換算 取引区分 月末,月初, 四半期, 半期, 年度 消費税,税率,端数処理 契約番号 期間 合計,小計,総合計 商品番号 有効期限 数量割引 型式コード 予定日 キャンペーン価格 製造番号 期限切れ一週間前のアラート 季節料金 シリアルナンバー 前日のリマインダ キャンセルポリシー … … … Date, String, BigDecimal, Long, … 小さな部品に プリミティブな型をラッピングした 業務に必要なデータとロジックをカプセル化
7.
小さな部品で組み立てる
インタフェース役 小さく(50行以下) 役割が明確な 調整役 オブジェクトが 小数の隣人と協力する 構造保持役 情報保持役 制御役 サービス提供役 サービス提供役 サービス提供役 情報保持役 情報保持役 情報保持役 サービス提供役 インタフェース役 インタフェース役
8.
アンチパターン 大きな部品
get 10以上のimport文 get get 5以上のインスタンス変数 set 10行以上の長いメソッド set set 100行を超えるクラス データ入れ物クラス getter/setter だけ ひとつの部品(クラス)が いろいろ知っていて、 業務の構造や業務ルールの理解が不十分。 よく分からないまま作った、とりあえずの置き なんでもやりたがる んでいく(偶発的凝集) 場所(クラス、パッケージ)に、なんでも突っ込
9.
ドメインモデルの 小さな部品たち 基本の練習
10.
ドメイン駆動設計への道
テクニック オブジェクト For メソッドの構成 設計スタイル Thoughtful Developer オブジェクト間の特性の移動 小さく作る練習 データの再編成 役割ステレオタイプ Leading Designer OO エクササイズ 条件記述の単純化 小数の隣人と協力 9つの簡単なルール メソッド呼び出しの単純化 ドメインの理解 言葉の力 実装の哲学 モデル駆動 クラス 振る舞いとメソッド 状態とコレクション
11.
ドメインオブジェクトの設計と実装
小さく作る クラス 50行以内 メソッド 3行以内 パッケージ 10ファイル以内
12.
3行メソッド nextStage() {
ready(); set(); go(); } こういうのが良い感じ
13.
必然的に
オブジェクト指向(小さく) になる 9つの簡単なルール 「Thought Works アンソロジー」 第5章 オブジェクト指向エクササイズ 原文 http://www.bennadel.com/resources/uploads/2012/ObjectCalisthenics.pdf
14.
小さく作る練習 1.ひとつのメソッドのインデントは1段階まで 2.else 句 を使わない 3.すべてのプリミティブ、文字型をラッピング 4.ファーストクラスコレクションを使う 5.1行につき、ドットはひとつ 6.名前は省略しない 7.クラス50行、パッケージ10ファイルまで 8.インスタンス変数は2つまで 9.getter/setter
を使わない
15.
小さく作る練習ガイド
パターン集 第5章 オブジェクト指向エクササイズ パターン集 9つのルール slideshare: オブジェクト指向できていますか? http://www.slideshare.net/MoriharuOhzu/ss-14083300 オブジェクト指向エクササイズのススメ http://www.slideshare.net/yojik/ss-1033616 オブジェクト指向の設計と実装 学び方のコツ http://www.slideshare.net/masuda220/ss-14263541 原文 http://www.bennadel.com/resources/uploads/2012/ObjectCalisthenics.pdf
16.
ドメインモデルの 小さな部品たち 実践の小技
17.
How より What 「複雑」を簡単に 汎用部品
より 専用部品 委譲の隠蔽 if を使わない for を使わない setter を使わない getter を使わない
18.
How
より What expireDate.add(-1); expireDate.previousDay(); expireDate.dayOfFinalAlert ();
19.
factoring : 因数分解
複雑を簡単に x2-4xy+4y2-2x+4y-8 (x-2y-4)(x-2y+2) a = x-2y (a-4)(a+2)
20.
汎用部品
より 専用部品 String AreaCode Long EntryNumber BigDecimal ラッピング Amount Date ExpireDate List<Appoint> Appointments なんでも屋 目的特化
21.
委譲の隠蔽 entrySheet.applicant().personName().familyN ameKana().substring(0,1); entrySheet.indexKey(); (Eclipse) alt +
shift +s, M, M → 委譲メソッドの生成 alt + ctrl + H → 呼び出し階層 呼び出し階層ビューで名前変更/移動のリファクタリング
22.
if を使わない enum Strategy/State パターン Missing
Object パターン (null object パターン) Map Set …
23.
for を使わない ・ファーストクラスコレクションに隠す ・Collection フレームワーク
API の復習 たとえば、TreeMap, TreeSet 必要なら ・Comparable の実装 ・Comparator の実装 ・equals()/hashCode() の override
24.
setter を使わない 完全コンストラクタ
Value Object パターン 生成時に必要な値をすべて渡す 状態を変えたい時 新しいオブジェクトを作る ライフサイクルの短いクラスの導入 (状態を固定できるまで細分化)
25.
getter を使わない @Deprecated
フレームワークは使っていいよ アプリケーションでは使っちゃだめよ get して何したいの? ロジックの移動 (データにロジックを寄せる) フィールドの移動 (ロジックにデータを寄せる)
26.
まとめ ・ドメインモデルは小さな部品で ・業務のやりたい事の粒度に注目 ・小さく作る練習 ・実践の小技
Descargar ahora