[フレーム]
はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

気に入った記事をブックマーク

  • 気に入った記事を保存できます
    保存した記事の一覧は、はてなブックマークで確認・編集ができます
  • 記事を読んだ感想やメモを書き残せます
  • 非公開でブックマークすることもできます
適切な情報に変更

エントリーの編集

loading...

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。

タイトルガイドライン

このページのオーナーなので以下のアクションを実行できます

タイトル、本文などの情報を
再取得することができます
コメントを非表示にできます コメント表示の設定

ブックマークしました

ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください

Twitterで共有

ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します

301users がブックマーク コメント 41

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

役割駆動設計で巨大クラスを爆殺する - Qiita

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

はてなブックマーク

はてなブックマークで
関心をシェアしよう

みんなの興味と感想が集まることで
新しい発見や、深堀りがもっと楽しく

ユーザー登録

アカウントをお持ちの方はログインページ

記事へのコメント41

  • 注目コメント
  • 新着コメント
j5ik2o
DCIの話?

その他
fai_fx
独身で家族がおらず、仕事が唯一の趣味なおっさんはクラス一つで十分だと言いたいのですね...

その他
kyon_mm
わかるけど、そうじゃないんだよなーとなり、まぁ別にいいかとも思ってきた。

その他
NOV1975
この例え話だとサービスそのものがでかすぎる

その他
lorenz_sys
巨大クラスってのは当初から巨大なんじゃなくていろんな人がいじり倒した結果そうなるんじゃない?最初に設計した人はちゃんと設計してたと思いたい。昔10万行のcppファイルを3万行にリファクタリングしたことあった。

その他
nice_and_easy
JavaのInterface的的なやつかと思ったら、内部変数も分けるからクラス構造の話なのか

その他
morita_non
単に、クラス(オブジェクト指向プログラミンとしての)そのものがいらんのでは...

その他
t10471
最初から細かくい分割しないで、でかくなったら分割すればいいんじゃないかと思う派...エヴァンス本を読んだときに積極的にリファクタリングしてもいいことに最初驚いたな。そのためにも、テスト大事だけど。

その他
otakumesi
これは業務系やユーザ系関係なく、設計ができるような人が社内にいるかどうかな気がするんだけど

その他
yojik
この考え方はピーターコードのカラーUMLとかストリームラインオブジェクトモデリングの手法として2000年代初期に通過済みで、とても有用だったけど、最近はあまり話題にならなかった。再発見されるのはとても良い。

その他
n314
DCIアーキテクチャと言うらしい

その他
tri-star
モノではなく役割でモデリングした方が良いという話。

その他
it_fitness_jp
" 解決方法"

その他
surume000
モノではなく役割でクラスを抽出すうr、動名詞でクラスを命名する。参考になる

その他
todesking
DCIっぽいが、こちらはクラス完全に分離させる手法か

その他
takatama
ユースケース図でアクターを分けて書けるか?という話になるのかな

その他
y_maeyama
役割駆動設計はクラス設計よりもデータベーステーブル設計で役立ちそう。

その他
yusuket
例だけ見たらDB正規化かと

その他
kappaseijin
"「動名詞でクラスを命名する」"

その他
ngsw
「帽子の被りわけできた方がいいよねー」という気持ちで読みました。

その他
umai_bow
これは・・・名詞の王国じゃな?

その他
kawa-_-kawa
記事を見ておぉと思った人は「責務(駆動)」「ロール」「コラボレーション」などで調べると色々出てくるので幸せになれると思う。次はこの概念を、どう構築するか設計方法に話が進むと思う。

その他
fortrand
フリマアプリの話、昔なら「ユーザー」という基底クラスをから各クラスを派生させ...となるけど今は考えが変わったということかな。開発の分担の細分化・先々の拡張性も考えると細かく分けたほうが近年は良いのかも。

その他
kenichiice
「モデリングにおいて、役割の概念を表現していない名前で安易に命名するのはアンチパターンです」

その他
lorenz_sys
lorenz_sys 巨大クラスってのは当初から巨大なんじゃなくていろんな人がいじり倒した結果そうなるんじゃない?最初に設計した人はちゃんと設計してたと思いたい。昔10万行のcppファイルを3万行にリファクタリングしたことあった。

2019年04月08日 リンク

その他
thesecret3
オブジェクト指向が生きててちょっとホッとする。

その他
NOV1975
NOV1975 この例え話だとサービスそのものがでかすぎる

2019年04月08日 リンク

その他
msh5_h
Mix-Inとちがうん?

その他
quick_past
親クラスと継承したサブクラスで機能分けしましょうとか、メソッドや変数名の名前の付け方とか、そういう話ではないの・・・??なぜそうしなきゃいけないのか。ってのがそんなにわかりにくい事なのかな・・・。

その他
yojik
yojik この考え方はピーターコードのカラーUMLとかストリームラインオブジェクトモデリングの手法として2000年代初期に通過済みで、とても有用だったけど、最近はあまり話題にならなかった。再発見されるのはとても良い。

2019年04月08日 リンク

その他
otakumesi
otakumesi これは業務系やユーザ系関係なく、設計ができるような人が社内にいるかどうかな気がするんだけど

2019年04月08日 リンク

その他
t10471
t10471 最初から細かくい分割しないで、でかくなったら分割すればいいんじゃないかと思う派...エヴァンス本を読んだときに積極的にリファクタリングしてもいいことに最初驚いたな。そのためにも、テスト大事だけど。

2019年04月08日 リンク

その他
yarumato
"「ユーザー」というひとつのクラスが役割を背負いすぎ。多数の役割に分割。「分割しすぎ」に見えるかもだが、各クラスが最小限のフィールドのみ所有してデータ安全で良い。「動名詞でクラスを命名」シンプル設計"

その他
h_taiji
なんか、ずっとピンとこなかった境界付けられたコントキストが、やっとピンときた気がした記事、ありがたいー

その他
morita_non
morita_non 単に、クラス(オブジェクト指向プログラミンとしての)そのものがいらんのでは...

2019年04月08日 リンク

その他
su_zu_ki_1010
データベース側はこの設計でいけそうだけど、データベースから受け取った値を格納するオブジェクト側が人によっては技術的負債になって糞コードだと呼ばれてしまうかもなぁ、と思ったりした。個人的にはアリ。

その他
nice_and_easy
nice_and_easy JavaのInterface的的なやつかと思ったら、内部変数も分けるからクラス構造の話なのか

2019年04月08日 リンク

その他
fai_fx
fai_fx 独身で家族がおらず、仕事が唯一の趣味なおっさんはクラス一つで十分だと言いたいのですね...

2019年04月08日 リンク

その他
megamouth
バッドノウハウだが、肥大化したクラスに手を入れる時は、ひとまず"〜Tools"という名前のシングルトンに委譲できないか考えることにしている。良いパターンではないが、そこそこ効く

その他
kaipu1224
大規模になるとつらたんになりそう

その他

注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

リンクを埋め込む

以下のコードをコピーしてサイトに埋め込むことができます

プレビュー
アプリのスクリーンショット
いまの話題をアプリでチェック!
  • バナー広告なし
  • ミュート機能あり
  • ダークモード搭載
アプリをダウンロード

関連記事

usersに達しました!

さんが1番目にブックマークした記事「役割駆動設計で巨...」が注目されています。

気持ちをシェアしよう

ツイートする

役割駆動設計で巨大クラスを爆殺する - Qiita

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure y... Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 大量のメソッドを保有し、数千、数万行単位にぶくぶく膨れ上がった巨大クラス。別名「神クラス」とも「大きな泥団子」とも呼ばれる、長大で複雑で密結合で極めて変更が困難なアイツ。 そんな巨大クラスの退治に有効な、ドメイン駆動設計を基思想とする「役割駆動設計」を紹介致します。 解決したい課題、狙う効果 数千、数万行単位の巨大クラスの登場を抑止する。 小さくシンプルな構造に落とし込み、堅牢で変更容易性の高い設計へ昇華させる。 例1:筆者をモデリング 分かりやすくなるよう、まず私を例にモデリングしてみます。私は以下のような特徴があります。 IT企業

ブックマークしたユーザー

  • funghi_seven2025年06月03日 funghi_seven
  • ag3nt2024年11月25日 ag3nt
  • techtech05212023年05月24日 techtech0521
  • n3142021年03月01日 n314
  • a-hamahama2020年12月25日 a-hamahama
  • tsumuchan2020年05月25日 tsumuchan
  • katsu_aniyan2020年04月17日 katsu_aniyan
  • take-yu2020年03月07日 take-yu
  • tri-star2020年02月17日 tri-star
  • it_fitness_jp2020年02月15日 it_fitness_jp
  • arx0balest2020年01月25日 arx0balest
  • s_ryuuki2020年01月02日 s_ryuuki
  • arktks002019年11月26日 arktks00
  • surume0002019年11月05日 surume000
  • repon2019年10月31日 repon
  • Ehren2019年10月29日 Ehren
  • todesking2019年10月29日 todesking
  • brains-kot2019年10月28日 brains-kot
すべてのユーザーの
詳細を表示します

ブックマークしたすべてのユーザー

同じサイトの新着

同じサイトの新着をもっと読む

いま人気の記事

いま人気の記事をもっと読む

いま人気の記事 - テクノロジー

いま人気の記事 - テクノロジーをもっと読む

新着記事 - テクノロジー

新着記事 - テクノロジーをもっと読む

同時期にブックマークされた記事

いま人気の記事 - 企業メディア

企業メディアをもっと読む

はてなブックマーク

公式Twitter

はてなのサービス

Copyright © 2005-2025 Hatena. All Rights Reserved.
設定を変更しましたx

AltStyle によって変換されたページ (->オリジナル) /