Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java 9 में प्रोजेक्ट Jigsaw क्या है?

प्रोजेक्ट Jigsaw का उद्देश्य

Jigsaw प्रोजेक्ट का प्राथमिक उद्देश्य Java 9 में मॉड्यूल बनाने के लिए मॉड्यूलरिटी अवधारणा पेश करना और फिर उसी को JDK पर लागू करना है।

मॉड्यूलरिटी (Jigsaw) के लाभ

  • मजबूत एनकैप्सुलेशन: मॉड्यूल केवल उन हिस्सों तक पहुंच सकते हैं जो उपयोग के लिए उपलब्ध हैं। जब तक पैकेज को module-info.java फाइल में स्पष्ट रूप से निर्यात नहीं किया जाता, पैकेज में पब्लिक क्लासेस पब्लिक नहीं हो सकतीं।
  • स्पष्ट निर्भरताएं: एक मॉड्यूल को आवश्यक क्लॉज के माध्यम से उन अन्य मॉड्यूल्स की घोषणा करनी चाहिए जिनका वे उपयोग करते हैं। मॉड्यूल्स को बिल्ड-टाइम, कंपाइल-टाइम या रनटाइम पर संक्षिप्त रनटाइम बनाने के लिए जोड़ा जाता है जिसे तुलनात्मक रूप से छोटे कंप्यूटिंग डिवाइसेज पर आसानी से स्केल किया जा सकता है।
  • विश्वसनीय: रनटाइम त्रुटियों के उन्मूलन के बाद, एप्लिकेशन अधिक विश्वसनीय हो जाता है। उदाहरण के लिए, हमें ध्यान देना चाहिए कि हमारे एप्लिकेशंस गायब क्लासेस के कारण रनटाइम के दौरान विफल होते हैं जिसके परिणामस्वरूप ClassNotFoundException होता है।

Jigsaw प्रोजेक्ट का हिस्सा विभिन्न JEPs (JDK एनहांसमेंट प्रपोजल)

  • JEP 200 - मॉड्यूलर JDK: Java Platform Module System (JPMS) का उपयोग JDK को मॉड्यूल्स के एक सेट में मॉड्यूलराइज़ करने के लिए करता है जिन्हें बिल्ड-टाइम, कंपाइल-टाइम या रनटाइम पर जोड़ा जा सकता है।
  • JEP 201 - मॉड्यूलर सोर्स कोड: JDK के सोर्स कोड को मॉड्यूल्स में मॉड्यूलराइज़ करता है और मॉड्यूल्स को कंपाइल करने के लिए बिल्ड टूल्स को अपग्रेड करता है।
  • JEP 220 - मॉड्यूलर रनटाइम इमेजेस: मॉड्यूल्स को समायोजित करने के लिए JRE और JDK रनटाइम इमेजेस को पुनर्गठित करने में मदद करता है, सुरक्षा, प्रदर्शन, और रखरखाव में सुधार करता है।
  • JEP 260 - अधिकांश आंतरिक APIs को एनकैप्सुलेट करें: अधिकांश आंतरिक APIs को सीधे या रिफ्लेक्शन के माध्यम से एक्सेस करने की अनुमति देता है। आंतरिक APIs को एक्सेस करना काफी जोखिम भरा है जो बदलने के लिए बाध्य हैं। उपयोग को रोकने के लिए, मॉड्यूल्स में संकुचित और केवल वे आंतरिक APIs उपयोग के लिए उपलब्ध हैं।
  • JEP 261 - मॉड्यूल सिस्टम: JVM, Java प्रोग्रामिंग भाषा, और अन्य मानक APIs को बदलकर मॉड्यूल सिस्टम Java विनिर्देश को कार्यान्वित करने के लिए जिम्मेदार।
  • JEP 282 - Jlink, द Java लिंकर: मॉड्यूल्स और उनकी निर्भरताओं को छोटे रनटाइम्स में पैक करने की अनुमति देता है।

प्रोजेक्ट Jigsaw Java प्लेटफॉर्म में मॉड्यूलरिटी लाता है, जिससे स्केलेबिलिटी, सुरक्षा, और रखरखाव में सुधार होता है।

  1. Java में StringIndexOutOfBoundsException क्या है? Java में StringIndexOutOfBoundsException क्या है?

    स्ट्रिंग्स का उपयोग Java में वर्णों के अनुक्रम को संग्रहीत करने के लिए किया जाता है, उन्हें ऑब्जेक्ट्स के रूप में माना जाता है। java.lang पैकेज का String क्लास एक स्ट्रिंग का प्रतिनिधित्व करता है। आप स्ट्रिंग को या तो new कीवर्ड का उपयोग करके (किसी अन्य ऑब्जेक्ट की तरह) बना सकते हैं, या लिटरल को मान

  1. Java में ArrayIndexOutOfBoundsException क्या है? Java में ArrayIndexOutOfBoundsException क्या है?

    एक सरणी एक डेटा संरचना/कंटेनर/ऑब्जेक्ट है जो एक ही प्रकार के तत्वों का एक निश्चित आकार का अनुक्रमिक संग्रह संग्रहीत करता है। सरणी का आकार/लंबाई निर्माण के समय निर्धारित की जाती है। सरणी में तत्वों की स्थिति को इंडेक्स या सबस्क्रिप्ट कहा जाता है। सरणी का पहला तत्व इंडेक्स 0 पर संग्रहीत होता है और, दू

  1. - Java प्रोग्रामिंग क्या है?

    Java एक सामान्य-उद्देश्य वाली उच्च-स्तरीय प्रोग्रामिंग भाषा है जिसे मूल रूप से Sun Microsystems द्वारा विकसित किया गया था और 1995 में जारी किया गया था। Java Windows, Mac OS, और UNIX के विभिन्न संस्करणों जैसे विभिन्न प्लेटफॉर्म पर चलता है।James Gosling ने जून 1991 में अपने कई सेट-टॉप बॉक्स प्रोजेक्ट्