यह एक अद्वितीय राउल होने के बारे में है ।
प्रत्येक वर्ग को एक भूमिका नाम से फिर से शुरू किया जाना चाहिए। एक भूमिका वास्तव में एक संदर्भ से जुड़ी क्रिया (सेट) की है।
उदाहरण के लिए :
फ़ाइल एक फ़ाइल का उपयोग प्रदान करती है। FileManager फ़ाइल ऑब्जेक्ट का प्रबंधन करता है।
संसाधन एक फ़ाइल से एक संसाधन के लिए डेटा रखता है। रिसोर्स मैनेजर सभी संसाधनों को रखता है और प्रदान करता है।
यहां आप देख सकते हैं कि कुछ क्रियाएं जैसे "प्रबंधित" अन्य क्रियाओं का एक सेट है। अधिकांश क्रियाओं को कक्षाओं की तुलना में बेहतर माना जाता है, अधिकांश समय। यदि क्रिया बहुत अधिक कार्य करती है जिसका अपना सामान्य संदर्भ है, तो यह अपने आप में एक वर्ग होना चाहिए।
इसलिए, विचार केवल आपको यह बताने का है कि एक विशिष्ट भूमिका को परिभाषित करके वर्ग क्या करता है, यह कई उप-भूमिका (सदस्य वस्तुओं या अन्य वस्तुओं द्वारा निष्पादित) का आधार हो सकता है।
मैं अक्सर उन प्रबंधक वर्गों का निर्माण करता हूं जिनमें कई अलग-अलग वर्ग होते हैं। एक कारखाने, एक रजिस्ट्री, आदि की तरह, एक प्रबंधक वर्ग देखें जैसे कि समूह प्रमुख, एक ऑर्केस्ट्रा प्रमुख जो अन्य लोगों को एक उच्च स्तरीय विचार प्राप्त करने के लिए एक साथ काम करने के लिए मार्गदर्शन करता है। उनकी एक भूमिका है, लेकिन अंदर की अन्य अनोखी भूमिकाओं के साथ काम करना। आप यह भी देख सकते हैं कि कैसे एक कंपनी का आयोजन किया जाता है: एक सीईओ शुद्ध उत्पादकता स्तर पर उत्पादक नहीं है, लेकिन यदि वह वहां नहीं है, तो कुछ भी सही ढंग से काम नहीं कर सकता है। यही उनकी भूमिका है।
जब आप डिजाइन करते हैं, तो अद्वितीय भूमिकाओं की पहचान करें। और प्रत्येक भूमिका के लिए, फिर देखें कि क्या इसे कई अन्य भूमिकाओं में नहीं काटा जा सकता है। इस तरह, यदि आपको अपने प्रबंधक के ऑब्जेक्ट बनाने के तरीके को बदलने की आवश्यकता है, तो बस फ़ैक्टरी बदलें और मन में शांति के साथ जाएं।