2012-02-03 13 views
6

मैं एएस 3 में एक पुस्तकालय बना रहा हूं। पुस्तकालय के अंदर मैं कक्षाओं/संकुलों के समूह का उपयोग करता हूं जिन्हें मेरी lib के अंतिम उपयोगकर्ता के संपर्क में आने की आवश्यकता नहीं है। मैं केवल इन वर्गों में से एक को बेनकाब करना चाहता हूं।एक्शनस्क्रिप्ट 3 (.jar समतुल्य?) में लाइब्रेरी को पैकेज करने के लिए कैसे करें

मैं अपने सवाल लगता है कि कर रहे हैं:

1) कैसे पुस्तकालयों सामान्यतः AS3 में वितरित कर रहे हैं?

2) क्या एएस 3 में एक .jar समतुल्य है जिसमें डेवलपर्स शामिल हो सकते हैं, लेकिन केवल उन कक्षाओं का उपयोग/ज्ञान होगा जिन्हें मैंने सार्वजनिक रूप से घोषित किया है?

धन्यवाद!

+0

@see: http://stackoverflow.com/questions/6041832/what-is-the-best-way-to-distribute-as3-classes-and-packages/6045196#6045196 – JonnyReeves

उत्तर

5

एएस 3 पुस्तकालयों को एसडब्ल्यूसी कहा जाता है। जार की तरह वे कुछ मेटाडेटा के साथ बस ज़िप अभिलेखागार हैं। आप फ्लैश बिल्डर लाइब्रेरी प्रोजेक्ट्स या फ्लेक्स एसडीके में एमएक्सएमएलसी कंपाइलर का उपयोग करके पुस्तकालयों का निर्माण कर सकते हैं, उदाहरण के लिए here का वर्णन किया गया है।

अच्छा अभ्यास एसडब्ल्यूसी या स्रोत कोड वितरित करना है। पाठ्यक्रम के दस्तावेज़ या रीडेमे फ़ाइल के साथ।

+0

क्या यह संभव बनाना संभव है फ्लेक्स ढांचे का उपयोग किए बिना एसडब्ल्यूसी फ़ाइल? मैं बस barebone AS3 चाहता हूँ। –

+0

यह तब तक नहीं है जब तक आपके पास फ्लैश आईडीई न हो। – Lucas

+4

@AndyHin, आपको एसडब्ल्यूसी बनाने के लिए फ्लेक्स कंपाइलर की आवश्यकता है, लेकिन आपको फ्लेक्स ढांचे को शामिल करने की आवश्यकता नहीं है (यदि आप अपने कोड में इसका कोई संदर्भ नहीं देते हैं तो यह नहीं होगा)। –

3

क्या फ्लेक्स ढांचे का उपयोग किये बिना एसडब्ल्यूसी फाइल बनाना संभव है? मुझे बस नंगे हड्डी AS3 चाहिए।

हाँ हम फ्लेक्स का उपयोग कर के लिए मजबूर नहीं कर रहे हैं, वास्तव में एडोब भी आधिकारिक तौर पर अब और अपने उत्पाद के रूप में फ्लेक्स का समर्थन नहीं करता क्योंकि यह अब एक खुला स्रोत अपाचे परियोजना है। http://blogs.apache.org/flex/

फ़्लैश के लिए स्वयं संकलक ओपन-सोर्स और उपयोग करने के लिए स्वतंत्र है, यही कारण है कि कई तृतीय पक्ष आईडीई और विकास उपकरण हैं जो एसडब्ल्यूसी पुस्तकालयों का उत्पादन भी कर सकते हैं। एक एससीसी बनाने के लिए कंपाइलर को एक ज़िप में एक विशेष एक्सएमएल फ़ाइल की आवश्यकता होती है। इसलिए यदि आप इसे मैन्युअल रूप से spec से करने से बचना चाहते हैं तो यह करने के लिए एक गुई रास्ता चुनने का मामला है।

मुझे लगता है कि फ्लैश डेवलपमेंट http://www.flashdevelop.org/ पर एक लोकप्रिय लोकप्रिय ओपन-सोर्स गुई तरीकों में से एक है जिसमें आपके इच्छित काम करने के लिए एक प्लगइन है। http://www.flashdevelop.org/community/viewtopic.php?f=4&t=2987 इस आईडीई की अत्यधिक अनुशंसा की जाती है, लेकिन यदि आपको कुछ और क्रॉस प्लेटफ़ॉर्म की आवश्यकता है, तो मैं इंटेलिज आइडिया की सलाह देता हूं जो कि 3 और जावा विचारों के बारे में एक महान है, क्योंकि आप जानते हैं कि जार फाइलें क्या हैं।

"केवल उन कक्षाओं का उपयोग/ज्ञान है जिन्हें मैंने सार्वजनिक रूप से घोषित किया है?"

अपने SWC में कक्षाएं इसलिए यदि आप इसे सार्वजनिक या निजी उसी तरह हो जाएगा सार्वजनिक या निजी के साथ एक SWC बनाने आपका मुख्य परियोजना का हिस्सा होने के अलग नहीं किया जाएगा। ईमानदार होने के बावजूद समुदाय में ब्लॉग और रिपॉजिटरीज़ द्वारा साझा किए गए अधिकांश कोड सिर्फ कच्चे * .as फाइलें हैं, एससीसी एक टीम में साझा पुस्तकालयों के लिए आसान है और इसे और अधिक संगठित कर सकता है।

+1

, एक .swc फ़ाइल केवल एक ज़िप फ़ोल्डर है जिसमें एम्बेडेड .as कोड और एक .xml फ़ाइल वाला .swf होता है। आप mySwc.swc को mySwc.zip पर पुनर्नामित कर सकते हैं और फिर इन सामग्रियों को प्रकट करने के लिए इसे अनजिप कर सकते हैं। इसके अतिरिक्त, यह वह जगह है जहां आप पहुंच सकते हैं।एसएफएफ फ़ाइल कई मुफ्त फ़्लैश डिकंपलरों में से एक का उपयोग करके डिकंपाइल करने के लिए, इसलिए अपने कोड की सुरक्षा के साधन के रूप में .swc का उपयोग आसानी से अवरुद्ध किया जाता है। – TheDarkIn1978

+0

हां यह स्पष्ट रूप से आपके कोड को "सुरक्षित" करने के लिए डिज़ाइन नहीं किया गया था। ऐसा लगता है कि सामान्य रूप से आपके एएस 3 कोड को सुरक्षित करना केवल इसे कठिन बनाकर किया जा सकता है, दूसरों के पुन: उपयोग के लिए असंभव नहीं है। उन उपकरणों को देखें जो आपके संकलित कोड के swf को खराब और परिवर्तित करते हैं। – imp