記事へのコメント41

    • 注目コメント
    • 新着コメント
    mohri
    (ブックマークコメントで議論が起こっているのが興味深い)

    その他
    shingo-sasaki-0529
    多重下請け自体は悪くない気がする。外から見て何を達成してくれる関数なのかがわかれば、その中で具体的にどういうプロセスで実施されているかを知る必要性はない場面は多いし。分解の粒度が適切かとかの話かな。

    その他
    lethli
    認可とかログとか一連の単位でまとめて処理されるべきことの有無によって変わってきそう

    その他
    igrep
    結局必要十分で簡潔な名前を付けられるかだよなあ。

    その他
    hiroshe
    このあたりのことについて詳しい本を知りたい

    その他
    hecaton55
    結局は見る人が構造を理解しやすい程度に切り分けされているかという問題に思える。分割統治する時の分割は気を遣う必要がある

    その他
    kazuau
    kazuau ひとりで色んなことをするのはやめて、分割して責任分担させるのだから、どっちかというと正しく多重下請けをさせよう、ではないだろうか

    2025/01/27 リンク

    その他
    repon
    ずっと先まで見に行かないと何やっているかわからない関数の解読は、脳のメモリを食いつぶすなぁ

    その他
    Dai3gen4Anko
    言わんとする事はわかるけど、組み込み系はハード依存性でレイヤー分けしないと新しいハードに対応する時に破綻するのよ

    その他
    trace22
    多重下請けどころか無限下請けが大好きなプログラマ

    その他
    monorod
    単に関数の切り方がヘタクソなだけで多重下請け云々とはあんまり関係ないのではと思った。

    その他
    hatest
    最初のコードと最後のコードで「注文完了メールを送る処理」と「履歴に保存する処理」の処理順序が入れ変わってる。「タスク分割」が重要なポイントなのにその説明はざっくりでコード例も適当だとよくないよ。

    その他
    paradoxparanoic
    いや、この問題の本質は関数が副作用を持っていることで、全てのパラメータと結果を引数と戻値で受け渡しすればほとんど解決する

    その他
    jintrick
    なんか引っかかるんだが、本当にこれでいいのか?

    その他
    tanatana456
    変更時の影響範囲の狭さが一番大切だよな。雑な処理を書いてても影響範囲さえ狭ければ後からどうとでもなる。

    その他
    homarara
    homarara これは多重下請けとかの問題ではなく、設計思想としてドメインをどう切り分けてるか次第では。

    2025/01/27 リンク

    その他
    qawsklp
    なんでもやり過ぎは良くない...

    その他
    tor4kichi
    tor4kichi トランザクション単位で主作用を書き下す方が見通しいいのはわかる。個人的にタイトルは単一責任の原則じゃなくて KISS(Keep it simple stupid)の原則の方がしっくりくるかも

    2025/01/27 リンク

    その他
    hogetax
    螺旋階段上ってる途中かな?先人が行ったり来たりしてるとこだよね...

    その他
    nakag0711
    nakag0711 この種の関数は複雑なコードをモジュールやレイヤに分割した結果として出てくる。その場合はそうなるのが正しい。フロントエンド界隈は画面数は多くても本質的な複雑度が低いからこの辺り理解されにくくなってる?

    2025/01/27 リンク

    その他
    otherworld
    インタフェースとユースケース、ドメイン、実装の詳細の責務は確かに違うものなので、3層か4層のレイヤー化アーキテクチャを勉強してみた方が良いと思う。

    その他
    baronhorse
    油断するとファットコントローラーになりそうだな

    その他
    kobito19
    kobito19 "「多重下請け構造は悪い」、これは世間的にだいぶ浸透してきた考えだと思います" そうか?まずこの前提が共有できてないと思うが。 "どの関数が何を担当しているか分からない" なのが原因なだけで委譲は普通にやるだ

    2025/01/27 リンク

    その他
    FreeCatWork
    にゃんてこった、関数たち多すぎにゃ!責任丸投げしてちゃダメだにゃ。自分の仕事は自分でせにゃ、そうすりゃにゃんとも平和なコードになるですにゃ。

    その他
    Phenomenon
    始点が違うけど関数が関数を呼び出す場合はなるべくプリミティブな関数だけに絞りたいよね。テスト書きにくいってなって気がつく事が多いかも。

    その他
    auto_chan
    auto_chan 最初にやりたいことを名前だけつけた構造で空実装するとよいよね。ここは注文全体ここは商品ごとのループってレベルまで呼出構造を実装し、コメントかprintで詳細を書いて……あとはAIか部下に丸投げだガハハ!

    2025/01/26 リンク

    その他
    atsushifx
    OOPなら、クラス内のメソッドで問題が起きない気もする

    その他
    wwolf
    SLAP/SLA原則はもっと知られるべきである

    その他
    mushus
    多重下請け構造が悪いというより、どっちかと言うと名前と処理内容のズレが問題に見える。メールの例だと決済するで想像するのはお金の処理であってメールを飛ばすことでは無いので低凝集とは言える。

    その他
    gm91
    参考にする

    その他

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

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

    関連記事

    関数の多重下請けをやめよう。単一責任の原則と関数の"責任"について

    「多重下請け構造は悪い」、これは世間的にだいぶ浸透してきた考えだと思います。しかし、プログラマは ...

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

    • heatman2025/02/24 heatman
    • mohri2025/02/02 mohri
    • igatea2025/01/29 igatea
    • clavier2025/01/29 clavier
    • saken6492025/01/28 saken649
    • ivgtr2025/01/28 ivgtr
    • buell2025/01/28 buell
    • shingo-sasaki-05292025/01/27 shingo-sasaki-0529
    • mkusaka2025/01/27 mkusaka
    • mash432025/01/27 mash43
    • tmg19982025/01/27 tmg1998
    • s12202382025/01/27 s1220238
    • riri132025/01/27 riri13
    • lethli2025/01/27 lethli
    • wktk_msum2025/01/27 wktk_msum
    • o-miya2025/01/27 o-miya
    • igrep2025/01/27 igrep
    • tashiromachi0012025/01/27 tashiromachi001
    すべてのユーザーの
    詳細を表示します

    同じサイトの新着

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

    いま人気の記事

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

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

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

    新着記事 - テクノロジー

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

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

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

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