मैं एक आर पैकेज लिख रहा हूं और मैं एक अन्य पैकेज (plotKML
) से एक फ़ंक्शन का उपयोग करना चाहता हूं। इस बाहरी पैकेज में इतनी सारी निर्भरताएं हैं कि मैं नहीं चाहता कि मेरे उपयोगकर्ताओं को डाउनलोड करने की आवश्यकता हो। यदि मैं NAMESPACE फ़ाइल में importFrom(plotKML, readGPX)
का उपयोग करता हूं तो यह plotKML
को नामस्थान में लोड करेगा और उन सभी निर्भरताओं को डाउनलोड करेगा जो मैं नहीं चाहता हूं।आर पैकेज में आयात करें (आयात के बिना)
तो प्रश्न यह है: क्या मुझे आवश्यक एक समारोह के लिए कोड कॉपी करना उचित है (यह सुनिश्चित करना कि उस कार्य में सभी निर्भरताओं को शामिल किया गया हो)? यदि ऐसा है तो एट्रिब्यूशन/दस्तावेज़ीकरण के लिए क्या उचित है - क्या मैं दस्तावेज को मूल से कॉपी करता हूं?
this post में इस समस्या की एक बड़ी चर्चा है और ब्रायन डिग्स द्वारा उत्तर बहुत उपयोगी है। लेकिन वह "आपके उदाहरण के लिए समाप्त होता है, आप अपने पैकेज में memisc :: वर्णन के लिए कोड को कॉपी करने से बेहतर हो सकते हैं, हालांकि उस दृष्टिकोण की अपनी समस्याएं और चेतावनी हैं" इसलिए मुझे कुछ अनिश्चितता के साथ छोड़ दिया गया है कि समस्याएं क्या हैं और चाहे वह एक विशेषता परिप्रेक्ष्य से उपयुक्त है।
क्या उस फ़ंक्शन के लिए कोड निर्भरता के बिना चलाता है? – Dason
फ़ंक्शन XML पैकेज में कुछ फ़ंक्शंस पर निर्भर करता है जिसे मुझे आयात करने की आवश्यकता है, इसलिए कोई समस्या नहीं है। अन्यथा आयात में सूचीबद्ध किसी भी अन्य पैकेज से कार्यों की आवश्यकता नहीं है (लगभग 20 पैकेज आवश्यक हैं!) देखें [यहां] (http://cran.r-project.org/web/packages/plotKML/index.html) के लिए प्लॉटकेएमएल की सूची की आवश्यकता है। – ZRoss
मुझे लगता है कि आपके अधिकांश उपयोगकर्ताओं ने कम से कम आधा पैकेज स्थापित किए होंगे, जिससे प्लॉटकेएमएल आयात करता है। – Roland