मैं एक जीडब्ल्यूटी एप्लीकेशन लिख रहा हूं (मेरी टीम के साथ), जो कुछ डोमेन विशिष्ट भाषा का विश्लेषण और प्रतिनिधित्व करता है - उदाहरण के लिए, पाठ, वीडियो और यूआई नियंत्रणों के साथ मीडिया प्रस्तुति बजाता है। इसलिए एप्लिकेशन में घटकों का एक सेट है: एक - मॉडल रखने के लिए, नियंत्रण - दिनचर्या (नियंत्रक) के लिए, और निश्चित रूप से हमारे पास दृश्य के लिए कक्षाएं हैं।अपना जीडब्ल्यूटी एप्लीकेशन प्लग-सक्षम कैसे करें?
अब हम एक समस्या है - यह सब प्लग में सक्षम, के अर्थ में करते हैं:
एक कोर प्लगइन है, जो सभी आम सामान बनाने होना चाहिए। यह coer ब्लॉक, एक JavaScript फ़ाइल (हर परिवर्तन के लिए एक)
करने की क्षमता कोर कक्षाएं का विस्तार होना चाहिए होना चाहिए कस्टम लिखने - (हर परिवर्तन के लिए एक) और यह संकलन जे एस फ़ाइल को अलग करने के
प्रत्येक प्लगइन को कोर प्लेटफ़ॉर्म पर पंजीकृत होना चाहिए (इसकी कक्षाएं निर्यात करें), इसलिए इसका उपयोग किया जा सकता है।
समस्याएं:
- कैसे संकलन करने कस्टम सामान अलग?
- कैसे लोड प्लगइन्स?
, ताकि वे शुद्ध जे एस से लागू किया जा सकता है।
इसके अलावा, मैं नए प्लगइन के लिए नया मॉड्यूल बनाने के लिए एक विचार है, तो यह फ़ाइल (पहली समस्या) अलग करने के लिए संकलित किया जाएगा।
क्या आपको इस तरह के वास्तुकला के निर्माण का अनुभव है, क्या आप इस मामले में कुछ सर्वोत्तम अभ्यास करते हैं?
ओह ... धन्यवाद।इन दो घंटों के लिए, जब से मैं एक प्रश्न पोस्ट करता हूं, मैंने कुछ समाधान किया है। जैसा कि आपने कहा था, मैंने कोर मॉड्यूल और इंटरफ़ेस आईपीएलजिन बनाया है, कि सभी प्लगइन्स को कार्यान्वित करना चाहिए। फिर मैंने एचटीएमएल फाइल में जोड़ा है, मैं मॉड्यूल प्रारंभिक दोनों मॉडलिंग कर रहा हूं। हालांकि यह अंतिम समाधान नहीं है, मुझे लगता है कि यह अच्छी शुरुआत है। – ajukraine
'फिर एक अमूर्त वर्ग बनाने के लिए जीडब्ल्यूटी निर्यातक का उपयोग करें जो प्लगइन्स को विस्तारित करना चाहिए जिसमें एक अमूर्त विधि होगी जो कोर द्वारा पारित प्लगइन का मूल तत्व ले लेगा और इसे पॉप्युलेट करेगा। क्या आप इस पर विवरण में जा सकते हैं? क्या आप कह रहे हैं कि आप जावास्क्रिप्ट (जीडब्ल्यूटी निर्यातक का उपयोग करके) में एक जीडब्ल्यूटी जावा क्लास निर्यात करेंगे, और फिर प्लगइन मॉड्यूल (शायद जेएसएनआई मूल विधि से) को दिए गए सार वर्ग को विस्तारित और कार्यान्वित करना चाहिए? –
प्लगइनमेनर की तरह कुछ ऐसा होगा जो निर्यातक के माध्यम से पंजीकरण विधि का पर्दाफाश करेगा (यह वास्तव में जेएसएनआई के माध्यम से वास्तव में सरल है और जीडब्ल्यूटी एक्सपोर्टर निर्भरता को जोड़ने के लिए आवश्यक नहीं हो सकता है)। सार प्लगप्लगिन एक एंट्री पॉइंट भी होगा जो प्लगइनमैनेजर (जेएसएनआई/एक्सपोर्टर के माध्यम से) के साथ खुद को पंजीकृत करेगा। सारप्ल प्लगइन एक इंजेक्ट विधि का पर्दाफाश करेगा जो प्लगइन के उदाहरण को तुरंत चालू करने के लिए मूल तत्व के रूप में उपयोग करने के लिए तत्व आईडी लेता है। मैं अपने जवाब में जोड़ दूंगा। – LINEMAN78