タグ

OOPとqiitaに関するishideoのブックマーク (2)

  • うまくクラス名を付けるための参考情報 - Qiita

    クラス名には、多くの場合"名詞"を用います。メソッド名の場合は動詞や助動詞を用いて命名しましたが、クラス名は何かしらの責務を持つモノとして捉えるため、名詞を用いることになります。 一方、インタフェースの宣言をする場合、そのインタフェースの名前に"形容詞"を用いることがあります(例:Iterable、Closeable等)。形容詞を用いることで、クラスの持つ性質を説明的に見ることができるようになります(Iterableな配列のList実装 -> ArrayList等)。 この記事は、どのような名詞や形容詞がクラス名やインタフェース名として用いることが出来るかを一覧し、できるだけクラスやインタフェースの役目を端的に表せるようなリファレンスとして活用できるものを目指していきたいと思います。 自分自身がクライアントアプリケーションのバックグラウンドを持っている為、多分にそこで用いる命名方法が含まれ

    うまくクラス名を付けるための参考情報 - Qiita
  • Rubyのリファクタリングでイケてないコードを美しいオブジェクト指向設計のコードへ改良するための方法 - Qiita

    まず以下にあるのがイケてないコード。一応動くし、テストもパスしている。でもそのコード品質は平均よりちょっと下という設定。 【範囲を指定してその期間の売上総合計を出すコード】 class OrdersReport def initialize(orders, start_date, end_date) @orders = orders @start_date = start_date @end_date = end_date end def total_sales_within_date_range orders_within_range = [] @orders.each do |order| if order.placed_at >= @start_date && order.placed_at <= @end_date orders_within_range << order end

    Rubyのリファクタリングでイケてないコードを美しいオブジェクト指向設計のコードへ改良するための方法 - Qiita
  • 1