आज मैं सोच रहा था कि संकलन/अनुप्रयोग स्टार्टअप के दौरान कोड जनरेशन के बजाय 'हाइबरनेट उपयोग प्रतिबिंब' जैसे फ्रेमवर्क (उदाहरण के लिए BCEL या ASM जैसे पुस्तकालयों का उपयोग करना)।जावा प्रतिबिंब बनाम कोड पीढ़ी
क्या यह ऐतिहासिक कारणों से है (जब Hibernate
लिखा जा रहा था, ऐसी कोई लाइब्रेरी उपलब्ध नहीं थी जो फ्लाई पर बाइट कोड पीढ़ी की अनुमति देगी) और अब हर कोई इस दृष्टिकोण का उपयोग करता है?
मुझे लगता है कि जेनरेट कोड के साथ दृष्टिकोण तेजी से होगा जो प्रतिबिंब का उपयोग करता है।
प्रतिबिंब धीमा नहीं है, विशेष रूप से I/O - डेटाबेस/फ़ाइल एक्सेस के संदर्भ में परिमाण धीमे होने के कई आदेश होंगे जो प्रदर्शन प्रतिबिंब के कारण प्रभावित होते हैं। – assylias
हाँ, आप शायद सही हैं। मैंने अभी इस सवाल से पूछा क्योंकि मैं प्रतिबिंब का उपयोग करने के फैसले के बारे में उत्सुक था। जेवीएम के इतने सालों के बाद मुझे विश्वास है कि कई अनुकूलन हैं जो 'जावा' की पहली रिलीज की तुलना में प्रतिबिंब को तेज करते हैं। – Andna