2019年11月6日のブックマーク (2件)

  • 関心の分離を意識した名前設計で巨大クラスを爆殺する - Qiita

    大量のメソッドを保有し、数千、数万行単位にぶくぶく膨れ上がった巨大クラス。別名「神クラス」とも「大きな泥団子」とも呼ばれる、長大で複雑で、様々なクラスと密結合で極めて変更が困難なアイツ。 そんな巨大クラスの退治に有効な、命名に関する考え方を紹介致します。 解決したい課題、狙う効果 数千、数万行単位の巨大クラスの登場を抑止する。 巨大クラスを爆砕し、小さなクラス群に分割する。 クラス結合度を下げ、影響範囲を小さくすることで保守コストや変更コストを下げる。 ダメな例 例えばECサイトの「商品」を考えてみます。 よくありがちなのは、商品をそのまま「商品クラス」と設計してしまうこと。 単純な商品クラスは、往々にして出品、予約、注文、発送など、様々なユースケースのクラスと結合してしまいがちです。 商品クラス自体も、結合したクラスに関連する知識(ロジック)を持ち始め、どんどん巨大化複雑化していきます。

    関心の分離を意識した名前設計で巨大クラスを爆殺する - Qiita
    paz3
    paz3 2019/11/06
    巨大クラス「商品」を関心の分離により「在庫品」「予約品」「注文品」「発送品」に分ける。同じユニークIDを使うことで一意性を確保できる。可能な限り具体的で意味範囲の狭い特化した名前を設計する。
  • リーダブルコードを3年ぶりに読み返してみて見つけた たった1つの大原則 - Qiita

    はじめに これはCyberAgent 19新卒 エンジニア Advent Calendar 2018の11日目の記事です。 リーダブルコードを3年ぶりに読み返してみたお話をします。 リーダブルコードを読み直してみた つい先日、友達が「リーダブルコードを数年ぶりに読み返してみたけど、やっぱりバイブルだな」みたいなことを言っていました。 僕もエンジニアになったばかりのころ、先輩にリーダブルコードを渡されました。読んで感動した覚えがあります。あれから一度も読んでいないリーダブルコードをもう一度読み返してみたくなりました。 そうしたら、なんと、、、当時は様々なテクニックの寄せ集めだと思っていたから、たった1つの大原則が浮かび上がってきました。 それは、 正しく命名せよ たったそれだけです。 「コードは他の人が最短時間で理解できるように書かなければならない」と、リーダブルコードは述べています。そし

    リーダブルコードを3年ぶりに読み返してみて見つけた たった1つの大原則 - Qiita
    paz3
    paz3 2019/11/06
    「たった1つの大原則が浮かび上がってきました。それは、正しく命名せよ たったそれだけです」「コードが一番のドキュメントであるという認識が大切です」「命名を工夫するだけで多くのコメントは不要になります」