This प्रश्न मुझे सोचने लगा, एक सन जेडीके उपलब्ध है, मैं और कुछ क्यों उपयोग करूंगा? क्या एक अलग संकलक का उपयोग करने के लिए कोई अच्छा तकनीकी कारण है?गैर-सूर्य जेआरई/जेडीके का उपयोग करने के लिए प्रेरणा क्या है?
उत्तर
लोगों का एक बहुत है कि तुम क्या पूछा तुलना में एक अलग सवाल का जवाब कर रहे हैं। JDK कोड से अलग है संकलित करने के लिए इस्तेमाल किया ।।
-
01: JVM इसे चलाने के लिए
- प्रदर्शन संकलित करें। एक समय में आईबीएम जैक्स एक बहुत तेज कंपाइलर था।
- त्रुटि रिपोर्टिंग। आईडीई में निर्मित कंपाइलर्स में आमतौर पर बेहतर त्रुटि रिपोर्टिंग होती है।
- मानक अनुपालन। उदाहरण के लिए, एक बार आईबीएम ने स्ट्रिंगबिल्डर में एक अतिरिक्त ओवरलोडेड विधि प्रदान की। यदि संकलन समय पर उस अधिभार का चयन किया गया था तो आपका कोड सूर्य JVM पर रनटाइम पर विफल हो जाएगा।
क्योंकि अधिकांश अनुकूलन JIT होता है इस्तेमाल किया, अपने संकलक से उत्पन्न कोड की गुणवत्ता बहुत महत्वपूर्ण नहीं है यही कारण है के रूप में एक विशेष JDK उपयोग करने के लिए छोड़ देता है
डारॉन के मुताबिक "जेडीके कोड को संकलित करने के लिए प्रयोग किया जाता है जो इसे चलाने के लिए इस्तेमाल किए गए जेवीएम से अलग होता है।" ?? !!, बस इसे और संपादन को रोकने के लिए यहां कॉपी किया गया। इस जवाब को किसने वोट दिया? –
@ राउल डारॉन सही है। जब आप ग्रहण में अपना कोड संकलित करते हैं तो आप एक्लिप्स कंपाइलर का उपयोग करते हैं, और जब आप इसे चलाते हैं, तो आप एक और वीएम (सन, आईबीएम, जेआरॉकिट इत्यादि) का उपयोग करेंगे। – Barthelemy
@ बार्टहेलेमी मैं असहमत हूं कि यह एक संकलक का उपयोग कर एक अच्छा अभ्यास है जो निष्पादन पर्यावरण की तुलना में अन्य स्रोत से प्रदान किया जाता है, लेकिन केवल मेरा विरोध है। –
अच्छा, मुझे यकीन है कि लोगों को इसका एहसास नहीं है, लेकिन ग्रहण का अपना संकलक है। इसलिए, जब आप एक्लिप्स का उपयोग कर रहे हैं, तो आप नन-सन (ओरेकल) जेडीके का उपयोग कर रहे हैं।
इसका उपयोग करने के कई फायदे भी हैं। सबसे पहले, ग्रहण में वास्तव में कुछ कंपाइलर हैं। जो सबसे अधिक लाभ प्रदान करता है, आईएमओ, वह है जो आपके द्वारा टाइप किए जाने वाले लाल रेखांकित प्रदान करता है।
ग्रहण कंपाइलर एक और चीज है जो 'compiles' uncompilabe कोड है। इसलिए, यदि आप कोड का एक टुकड़ा चलाते हैं, और उस कोड को कभी भी हिट नहीं करते जो संकलित नहीं कर सका, तो कोड बिना त्रुटि के चलाएगा। अन्यथा आपको NotYetCompiledException
मिलता है। (या ऐसा कुछ)
ठीक है, काफी उचित है। लेकिन सादा-वेनिला कमांड लाइन संकलन के मामले में, क्या किसी और चीज का उपयोग करने के लिए एक अच्छा तकनीकी कारण है? – Dave
@ डेव, ठीक है, मैं दुर्भाग्य से उस बात से बात नहीं कर सकता। मुझे पता नहीं है। – jjnguy
ईक्लीप्स द्वारा आपके द्वारा निर्मित कुछ कंपाइलर्स का क्या मतलब है? कई एपीआई (उच्च स्तरीय एएसटी, निम्न-स्तर एएसटी, आंतरिक एएसटी) हैं, कई अनुकूलन विकल्प (चेतावनी क्या है, त्रुटि क्या है), लेकिन मुझे केवल एक कंपाइलर (प्रतीक पार्सर, बाइटकोड जनरेटर इत्यादि) पता है।) – Barthelemy
यदि आप एक वेबलॉगिक उपयोगकर्ता हैं, तो जेआरॉकिट बहुत समझ में आता है। यह एक भयानक जेवीएम है। मुझे यकीन नहीं है कि यह सभी ऑपरेटिंग सिस्टम पर चलता है, हालांकि।
आप शायद जेआरॉकिट का मतलब है। – Barthelemy
बेशक, सूर्य और बीईए और अब ओरेकल के स्वामित्व में हैं। –
@ टॉम - हाँ, लेकिन किसी भी मामले में जेरोकिट सूर्य नहीं है, यह बीईए है। – duffymo
यदि आप जेआरॉकआईटी या जो भी अन्य जेआरई पोर्टेबिलिटी खोने जा रहे हैं, तो कोई दूसरा रुको, इससे कोई फर्क नहीं पड़ता कि कौन से विज्ञापन आपको बताते हैं: यह 100% पोर्टेबल नहीं है और न ही 100% मानक है।
असल में कई लोग आपको गले लगाने के जेआरई हिस्से को बदलने, रणनीति को विस्तारित करने और बुझाने पर विचार करते हैं, कभी-कभी किसी समस्या को हल करने के लिए "केवल अनुशंसित तरीका" होता है।
http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish
वादा, मैं इस साल पहले का सामना करना पड़ा और इसके लिए भुगतान किया :(
- 1. size_t uint32 uint64 आदि का उपयोग करने के लिए प्रेरणा
- 2. डेटा स्रोतों के लिए जेएनडीआई का उपयोग करने के लिए प्रमुख प्रेरणा क्या हैं?
- 3. प्रेरणा
- 4. Overengineered एपीआई के लिए प्रेरणा?
- 5. नेविगेशन breadcrumbs के लिए प्रेरणा के स्रोत
- 6. IPV6_V6ONLY ध्वज जोड़ने के लिए प्रेरणा क्या थी?
- 7. प्रतिलिपि बनाने और प्रत्यक्ष प्रारंभिकता के पीछे क्या प्रेरणा है?
- 8. असाइन किए गए मान के बजाए इकाई को मूल्यांकन करने के लिए स्केल असाइनमेंट के लिए प्रेरणा क्या है?
- 9. उपयोग करने के लिए क्या अंतर है?
- 10. जॉब्जेक्ट का उपयोग करने के लिए पुस्तकालय नाम क्या है?
- 11. shared_ptr का उपयोग करने के लिए, क्या यह सुरक्षित है?
- 12. क्या emacs का उपयोग करने के लिए उत्कृष्ट ट्यूटोरियल है?
- 13. @ प्रेरणा प्राधिकृत वसंत सुरक्षा
- 14. पूर्णांक फ़ील्ड टाइप करने के लिए पूर्णांक फ़ील्ड टाइप का उपयोग करने के लिए क्या है?
- 15. क्या टेक्स्टबॉक्स संपादित करने के लिए vim का उपयोग करने के लिए फ़ायरफ़ॉक्स ऐड-ऑन है?
- 16. जावा एनम दस्तावेज करने के लिए जावाडॉक का उपयोग करने का सबसे अच्छा तरीका क्या है?
- 17. क्या एक डीएलएल संस्करण का उपयोग करने के लिए मजबूर करने का कोई तरीका है?
- 18. फ़ंक्शन कॉल को परिभाषित करने के लिए प्रीप्रोसेसर का उपयोग करने का नकारात्मक पक्ष क्या है?
- 19. क्या यह एकाधिक संग्रह लोड करने के लिए ThenFetch() का उपयोग करने का सही तरीका है?
- 20. size_t प्रिंट करने के लिए printf का उपयोग करने का सही तरीका क्या है?
- 21. घड़ी_टी प्रिंट करने के लिए printf का उपयोग करने का सही तरीका क्या है?
- 22. जावास्क्रिप्ट लोड करने के लिए document.write पर unescape का उपयोग करने का क्या फायदा है?
- 23. उपयोग करने का उद्देश्य क्या है?
- 24. क्या जेडीईई का उपयोग करने लायक है?
- 25. राज्य पैटर्न का उपयोग करने या उपयोग करने के लिए?
- 26. क्या यह उपयोग करने के लिए एक NSString उदाहरण के खिलाफ isKindOfClass का उपयोग सुरक्षित है?
- 27. उपज क्या है ?, और एएसपीनेट में उपज का उपयोग करने के लिए लाभ क्या है?
- 28. फोनगैप का उपयोग करने की व्यावहारिकता क्या है?
- 29. विचारों का उपयोग करने के लिए या विचारों का उपयोग न करने के लिए
- 30. नियंत्रक बनाने के लिए angular.module का उपयोग करने का लाभ क्या है, यदि कोई है?
यह विश्वास नहीं है कि यह प्रश्न यहां है, लेकिन प्री-1.4 के अंधेरे दिनों में, आईबीएम जेडीके वास्तव में सूर्य की तुलना में बहुत तेज था। और जैक्स कंपाइलर शासन किया। –
लाइसेंसिंग/वितरण समझौते विभिन्न विक्रेताओं से अलग हैं ... – chrismh
सामुदायिक विकी? – Barthelemy