JavaFX - अवलोकन

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

पारंपरिक डेस्कटॉप अनुप्रयोगों के विपरीत, RIA को चलाने के लिए कोई अतिरिक्त सॉफ़्टवेयर की आवश्यकता नहीं है। एक विकल्प के रूप में, आपको एप्लिकेशन के आधार पर, सॉफ़्टवेयर जैसे कि ActiveX, Java, Flash इंस्टॉल करना चाहिए।

आरआईए में, ग्राफिकल प्रेजेंटेशन को क्लाइंट की तरफ से हैंडल किया जाता है, क्योंकि इसमें एक प्लगइन होता है जो रिच ग्राफिक्स के लिए सपोर्ट प्रदान करता है। संक्षेप में, एक आरआईए में डेटा हेरफेर सर्वर साइड पर किया जाता है, जबकि संबंधित ऑब्जेक्ट हेरफेर क्लाइंट साइड पर किया जाता है।

हमारे पास तीन मुख्य प्रौद्योगिकियां हैं जिनका उपयोग करके हम एक आरआईए विकसित कर सकते हैं। इनमें निम्नलिखित शामिल हैं -

  • एडोब फ्लैश
  • माइक्रोसॉफ्ट सिल्वरलाइट
  • JavaFX

एडोब फ्लैश

यह सॉफ्टवेयर प्लेटफॉर्म Adobe Systems द्वारा विकसित किया गया है और इसका उपयोग रिच इंटरनेट एप्लिकेशन बनाने में किया जाता है। इनके साथ, आप अन्य एप्लिकेशन जैसे वेक्टर, एनीमेशन, ब्राउज़र गेम्स, डेस्कटॉप एप्लिकेशन, मोबाइल एप्लिकेशन और गेम्स आदि भी बना सकते हैं।

यह RIA के डेस्कटॉप ब्राउजर की प्रवेश दर 96% के साथ विकसित करने और निष्पादित करने के लिए सबसे अधिक इस्तेमाल किया जाने वाला मंच है।

माइक्रोसॉफ्ट सिल्वरलाइट

एडोब फ्लैश की तरह, माइक्रोसॉफ्ट सिल्वरलाइट भी रिच इंटरनेट एप्लिकेशन को निष्पादित करने के साथ-साथ विकसित करने के लिए एक सॉफ्टवेयर एप्लीकेशन फ्रेमवर्क है। शुरुआत में इस ढांचे का इस्तेमाल स्ट्रीमिंग मीडिया के लिए किया गया था। वर्तमान संस्करण मल्टीमीडिया, ग्राफिक्स और एनीमेशन का भी समर्थन करते हैं।

इस प्लेटफ़ॉर्म का उपयोग शायद ही कभी 66% के डेस्कटॉप ब्राउज़र प्रवेश दर के साथ किया जाता है।

JavaFX

JavaFX एक Java लाइब्रेरी है, जिसके उपयोग से आप रिच इंटरनेट एप्लिकेशन विकसित कर सकते हैं। जावा तकनीक का उपयोग करके, इन अनुप्रयोगों का ब्राउज़र प्रवेश दर 76% है।

JavaFX क्या है?

JavaFX एक जावा लाइब्रेरी है जिसका उपयोग रिच इंटरनेट एप्लिकेशन बनाने के लिए किया जाता है। इस लाइब्रेरी का उपयोग करके लिखे गए एप्लिकेशन कई प्लेटफार्मों पर लगातार चल सकते हैं। जावाएफएक्स का उपयोग करके विकसित किए गए एप्लिकेशन विभिन्न उपकरणों जैसे डेस्कटॉप कंप्यूटर, मोबाइल फ़ोन, टीवी, टैबलेट आदि पर चल सकते हैं।

विकसित होना GUI Applications जावा प्रोग्रामिंग भाषा का उपयोग करते हुए, प्रोग्रामर पुस्तकालयों जैसे पर भरोसा करते हैं Advanced Windowing Toolkit तथा Swing। जावाएफ़एक्स के आगमन के बाद, ये जावा प्रोग्रामर अब जीयूआई अनुप्रयोगों को समृद्ध सामग्री के साथ प्रभावी ढंग से विकसित कर सकते हैं।

JavaFX के लिए चाहिए

विकसित होना Client Side Applicationsसमृद्ध सुविधाओं के साथ, प्रोग्रामर मीडिया, यूआई नियंत्रण, वेब, 2 डी और 3 डी आदि सुविधाओं को जोड़ने के लिए विभिन्न पुस्तकालयों पर निर्भर करते थे। जावाएफएक्स में ये सभी सुविधाएँ एक ही पुस्तकालय में शामिल हैं। इनके अलावा, डेवलपर्स जावा लाइब्रेरी की मौजूदा सुविधाओं जैसे कि एक्सेस भी कर सकते हैंSwing

जावाएफ़एक्स ग्राफिक्स और मीडिया एपीआई का एक समृद्ध सेट प्रदान करता है और यह आधुनिक का लाभ उठाता है Graphical Processing Unitहार्डवेयर के माध्यम से त्वरित ग्राफिक्स। JavaFX उन इंटरफेस का भी उपयोग करता है, जो डेवलपर्स ग्राफिक्स एनीमेशन और UI कंट्रोल को जोड़ सकते हैं।

जावा, ग्रोवी और जेरी जैसी जेवीएम आधारित तकनीकों के साथ जावाएफएक्स का उपयोग किया जा सकता है। यदि डेवलपर्स जावाएफ़एक्स का विकल्प चुनते हैं, तो अतिरिक्त तकनीकों को सीखने की आवश्यकता नहीं है, क्योंकि उपरोक्त किसी भी तकनीक का पूर्व ज्ञान जावा एफएक्सएफ़ का उपयोग करने के लिए आरआईए को विकसित करने के लिए पर्याप्त होगा।

JavaFX की विशेषताएं

JavaFX की कुछ महत्वपूर्ण विशेषताएं निम्नलिखित हैं -

  • Written in Java - JavaFX लाइब्रेरी जावा में लिखी गई है और उन भाषाओं के लिए उपलब्ध है जिन्हें JVM पर क्रियान्वित किया जा सकता है, जिसमें शामिल हैं - Java, Groovy and JRuby। ये JavaFX एप्लिकेशन प्लेटफ़ॉर्म स्वतंत्र भी हैं।

  • FXML- जावाएफएक्स में एक भाषा है जिसे एफएक्सएमएल के रूप में जाना जाता है, जो कि घोषणात्मक मार्कअप भाषा की तरह एक HTML है। इस भाषा का एकमात्र उद्देश्य उपयोगकर्ता इंटरफ़ेस को परिभाषित करना है।

  • Scene Builder- JavaFX सीन बिल्डर नाम से एक एप्लीकेशन उपलब्ध कराता है। इस एप्लिकेशन को ग्रहण और नेटबीन्स जैसे आईडीई में एकीकृत करने पर, उपयोगकर्ता एक ड्रैग एंड ड्रॉप डिजाइन इंटरफेस का उपयोग कर सकते हैं, जिसका उपयोग एफएक्सएमएल एप्लिकेशन (बस स्विंग ड्रैग एंड ड्रॉप और ड्रीमवेवर एप्लीकेशन की तरह) विकसित करने के लिए किया जाता है।

  • Swing Interoperability - JavaFX एप्लिकेशन में, आप स्विंग सामग्री का उपयोग करके एम्बेड कर सकते हैं Swing Nodeकक्षा। इसी तरह, आप मौजूदा स्विंग एप्लिकेशन को JavaFX विशेषताओं जैसे एम्बेडेड वेब कंटेंट और रिच ग्राफिक्स मीडिया के साथ अपडेट कर सकते हैं।

  • Built-in UI controls - जावाएफएक्स लाइब्रेरी यूआई नियंत्रण का उपयोग करती है, जिसका उपयोग करके हम एक पूर्ण-विशेषताओं वाला एप्लिकेशन विकसित कर सकते हैं।

  • CSS like Styling- JavaFX स्टाइल की तरह CSS प्रदान करता है। इसका उपयोग करके, आप सीएसएस के एक साधारण ज्ञान के साथ अपने आवेदन के डिजाइन में सुधार कर सकते हैं।

  • Canvas and Printing API- JavaFX एपीआई प्रदान करने की एक तात्कालिक मोड शैली, कैनवस प्रदान करता है। पैकेज के भीतरjavafx.scene.canvasयह कैनवास के लिए कक्षाओं का एक सेट रखता है, जिसके उपयोग से हम सीधे JavaFX दृश्य के एक क्षेत्र में आकर्षित हो सकते हैं। JavaFX पैकेज में मुद्रण प्रयोजनों के लिए कक्षाएं भी प्रदान करता हैjavafx.print

  • Rich set of API’s- जावाएफएक्स लाइब्रेरी जीयूआई एप्लिकेशन, 2 डी और 3 डी ग्राफिक्स आदि विकसित करने के लिए एपीआई का एक समृद्ध सेट प्रदान करता है। एपीआई के इस सेट में जावा प्लेटफॉर्म की क्षमताएं भी शामिल हैं। इसलिए, इस एपीआई का उपयोग करके, आप जावा भाषाओं की विशेषताओं जैसे जेनरिक, एनोटेशन, मल्टीथ्रेडिंग, और लैम्ब्डा एक्सप्रेशन तक पहुंच सकते हैं। पारंपरिक जावा कलेक्शंस लाइब्रेरी को बढ़ाया गया और अवलोकन योग्य सूचियों और मानचित्र जैसी अवधारणाओं को इसमें शामिल किया गया। इनका उपयोग करके, उपयोगकर्ता डेटा मॉडल में परिवर्तन देख सकते हैं।

  • Integrated Graphics library - JavaFX इसके लिए कक्षाएं प्रदान करता है 2d तथा 3d ग्राफिक्स।

  • Graphics pipeline- JavaFX हार्डवेयर-त्वरित ग्राफिक्स पाइपलाइन पर आधारित ग्राफिक्स का समर्थन करता है जिसे प्रिज्म के नाम से जाना जाता है। जब एक समर्थित ग्राफिक कार्ड या GPU के साथ प्रयोग किया जाता है तो यह सुगम ग्राफिक्स प्रदान करता है। यदि सिस्टम ग्राफिक कार्ड का समर्थन नहीं करता है, तो प्रिज्म डिफॉल्ट को सॉफ़्टवेयर रेंडरिंग स्टैक में बदल देता है।

JavaFX का इतिहास

JavaFX मूल रूप से विकसित किया गया था Chris Oliver, जब वह नाम की कंपनी के लिए काम कर रहा था See Beyond Technology Corporation, जिसे बाद में अधिग्रहित कर लिया गया Sun Microsystems वर्ष 2005 में।

निम्नलिखित बिंदु हमें इस परियोजना की अधिक जानकारी देते हैं -

  • शुरुआत में इस प्रोजेक्ट को F3 नाम दिया गया था (Form Follows Functions) और इसे जीयूआई अनुप्रयोगों को विकसित करने के लिए समृद्ध इंटरफेस प्रदान करने के इरादे से विकसित किया गया था।

  • Sun Microsystems जून 2005 में See Beyond कंपनी का अधिग्रहण किया, इसने F3 परियोजना को रूपांतरित किया JavaFX

  • वर्ष 2007 में, आधिकारिक तौर पर JavaFX की घोषणा की गई थी Java One, एक विश्व व्यापी वेब सम्मेलन जो वार्षिक रूप से आयोजित किया जाता है।

  • वर्ष 2008 में, Net BeansJavaFX के साथ एकीकृत उपलब्ध था। उसी वर्ष में, जावाStandard Development Kit JavaFX के लिए 1.0 जारी किया गया था।

  • वर्ष 2009 में, ओरेकल कॉर्पोरेशन ने सन माइक्रोसिस्टम्स का अधिग्रहण किया और उसी वर्ष JavaFX (1.2) का अगला संस्करण भी जारी किया गया।

  • वर्ष 2010 में, JavaFX 1.3 बाहर आया और वर्ष 2011 में JavaFX 2.0 जारी किया गया।

  • नवीनतम संस्करण, जावाएफएक्स 8 को 18 मार्च 2014 को जावा के अभिन्न अंग के रूप में जारी किया गया था।