जावा क्लास की अधिकतम आवृत्ति चर क्या है?

क्या यह अच्छा ओओ डिज़ाइन है जो जावा के वर्ग में 20-25 इंस्टेंस वैरिएबल है, उनके गेटर/सेटर्स के साथ?
सभी चर पूरी तरह से स्वतंत्र हैं।
चूंकि मैं एचबीज़ में एक कक्षा का उपयोग कर रहा हूं, जो कॉलम परिवार का प्रतिनिधित्व करता है, ताकि कॉलम परिवार में प्रत्येक पंक्ति के लिए अलग-अलग कॉलम हो सकें। तो मुझे उस वर्ग में इस संख्या में बहुत से चर डालना होगा। मैं जानना बहुत उत्सुक हूं, जावा क्लास आदर्श रूप से कितने आवृत्ति चर और विधियों को चाहिए?

4
जोड़ा संपादित
विचारों: 1

5 उत्तर

अच्छा ओओ रखने की कोशिश कर रहा है, कक्षा को एक जिम्मेदारी रखने के लिए देखना अच्छा है। तो यदि आपके पास इतने सारे असंबंधित चर हैं, तो ऐसा लगता है कि कक्षा बहुत अधिक कर रही है।

यह एक "कोड गंध" होगा और आपको कई वर्गों में फिर से फैक्टरिंग पर विचार करना चाहिए।

यह अच्छा है कि आप अच्छे ओओ में रूचि रखते हैं। मैं रिफैक्टरिंग और कोड गंध पर पढ़ने की सलाह देते हैं।

http://c2.com/cgi/wiki?OneResponsibilityRule would be relative here..

7
जोड़ा
en.wikipedia.org/wiki/God_object भी लागू हो सकता है।
जोड़ा लेखक Eric, स्रोत

यह वास्तव में तब तक कोई फर्क नहीं पड़ता जब तक आप कम युग्मन सुनिश्चित कर रहे हों। कक्षा में इतने सारे चर आवंटित करने से उच्च युग्मन की संभावना बढ़ सकती है।

साथ ही, यह आपके वर्ग में निम्न समेकन का संकेत हो सकता है, के विपरीत उच्च संयोजन की आदर्श स्थिति।

4
जोड़ा

20-25 उदाहरण चर में आपको सीमा के भीतर होना चाहिए, हालांकि, मुझे लगता है कि 20-25 बहुत अधिक हो सकता है। आप इन्हें विभिन्न वर्गों में आज़माकर समूहित कर सकते हैं और आवृत्ति चर की मात्रा को कम कर सकते हैं।

आम तौर पर बहुत सारे आवृत्ति चर होने पर कक्षा को सीमित क्षेत्र में सीमित किया जाता है, जो एक परिदृश्य में आदर्श नहीं है जहां आप समाधान को बनाए रखना चाहते हैं। इसे तोड़ना (अगर सही तरीके से किया जाता है) को अपनी कुछ कक्षाओं की पुनः उपयोगिता में वृद्धि करनी चाहिए।

2
जोड़ा

अच्छा, अगर आपकी कक्षा डेटा धारक वस्तुओं का प्रतिनिधित्व करती है, तो उसके साथ जाने के लिए यह बिल्कुल ठीक है। यह डिजाइन जावा बीन्स में आम है।

उदाहरण के लिए, यदि आपके पास एक वर्ग है जो किसी कंपनी में किसी कर्मचारी का प्रतिनिधित्व करती है, तो यह काफी सामान्य है, अगर किसी कर्मचारी के पास 20-25 विशेषताएं हैं।

लेकिन यदि आप व्यवसाय विधियों के साथ बहुत अधिक आवृत्ति चर को गड़बड़ कर रहे हैं, तो लाइन के नीचे आपको कठिनाइयों का सामना करना पड़ेगा, क्योंकि आप केंद्रित और केंद्रित व्यावसायिक घटकों को प्राप्त नहीं कर पाएंगे।

इसे बेहतर बेहतर आर्किटेक्चर-वार बनाने के लिए, आप विरासत (उप-वर्ग) या संरचना (आंतरिक कक्षा) पर विचार कर सकते हैं

0
जोड़ा

जावा में जावा इंस्टेंस वैरिएबल पर कोई सीमा नहीं है जो कक्षा हो सकती है। आपकी आवश्यकता के मुताबिक आपके पास आवृत्ति चर के किसी भी संख्या हो सकती है।

याद रखने के लिए मुख्य बिंदु यह है कि केवल गेटर और सेटर विधियों द्वारा पहुंचा जा सकता है। उपयोगकर्ता को आवृत्ति चर के नाम से सीधे उन्हें एक्सेस करने में सक्षम नहीं होना चाहिए।

मतलब इंस्टेंस वैरिएबल को निजी संशोधक के साथ घोषित किया जाना चाहिए और उन्हें एक्सेस करने और उन्हें कुशल बनाने के लिए सार्वजनिक विधियां प्रदान करनी चाहिए।

0
जोड़ा