ボブおじさんによるクリーンコードを読んでいます。私は英語を母国語としないので、次の文を理解できませんでした。
クラスとオブジェクトには、
Customer
、WikiPage
、Account
、AddressParser
のような名詞または名詞句の名前が必要です。クラスの名前にManager
、Processor
、Data
、またはInfo
のような単語を使用しないでください。クラス名は動詞であってはなりません。
私が知っているように、Manager
、Processor
、Data
、およびInfo
はどれも動詞ではありませんか。彼が強調したい実際のポイントは何ですか?
3つのポイントは別々です。
彼はthings(名詞)とactions(動詞)を区別しようとしています。従来のオブジェクト指向設計では、クラスは物であり、それらのメソッドは物が実行できるアクションであると考えています。 manageは世話をするか調整することであり、一方managerは管理する人または物です。
入門書は通常、これをDogという名前のクラスのような最も単純で最も明白な用語に要約し、メソッドBarkおよびBiteを使用します。実世界のクラスでは、区別は少し微妙ですが、それでも存在します。ボブおじさんが言っている点は、しかし、(managerは名詞であるが、それはマネージャーが何をしているかに多くの注意を払っているということです-それは漠然としています何がどのように管理されているかを正確に説明する言葉。