Jump to content

Wikifunctions:बारे में

From Wikifunctions
This page is a translated version of the page Wikifunctions:About and the translation is 100% complete.
विकिफ़ंक्शन्स का पहला लक्ष्य है विकिमीडिया परियोजनाओं को समर्थित करना, मगर यह इसके परे भी लक्ष्यों को समर्थित करेगा, बिलकुल विकिडेटा की तरह। यह विकिपीडिया के परे विकिफ़ंक्शन्स का एक विवरण है।
ध्येय वक्तव्य
विकिमीडिया की परियोजनाओं के और उसके परे समर्थन के लिए, दुनिया की सभी प्राकृतिक और प्रोग्रामिंग भाषाओं में सभी के द्वारा कॉल और पुनः उपयोग किए जाने के लिए, सभी के सहयोग से कोड फ़ंक्शन्स की एक मुक्त लाइब्रेरी का निर्माण और अनुरक्षण करने की एक परियोजना।

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

विकिफ़ंक्शन्स में फ़ंक्शन्स शामिल हैं। एक फ़ंक्शन के कई भाषाओं में विवरण और साथ में पैरामीटरों की एक सूची, परीक्षण के मामले, अलग-अलग प्रोग्रामिंग भाषाओं में कार्यान्वयनों की सूची, और अतिरिक्त मेटाडेटा हो सकते हैं, और ये सभी कई भाषाओं (विकिमीडिया द्वारा समर्थित सहित) में हो सकते हैं। कार्यान्वयनों का दूसरी सॉफ़्टवेयर परियोजनाओं (जैसे निजी ऐप्स या स्क्रिप्ट्स) में पुनः उपयोग किया जा सकता है, इन्हें ऑनलाइन (ब्राउज़र में, किसी क्लाउड पर्यावरण में, या फिर Jupyter[1] या PAWS[2] नोटबुक्स में) कॉल और निष्पादित किया जा सकता है, अधिक जटिल कार्यक्षमता प्राप्त करने के लिए साथ जोड़ा जा सकता है, हस्ताक्षरित किया जा सकता है, विश्लेषित किया जा सकता है, सत्यापित किया जा सकता है, और काफी कुछ।

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

विकिफ़ंक्शन्स के दो उद्देश्य हैं: फ़ंक्शन्स की एक अच्छी तरह से परिभाषित साझित सूची का निर्माण करना जिसका व्यापक रूप से पुनः उपयोग किया जा सके, और एक ऐसा पर्यावरण प्रदान करना जहाँ फ़ंक्शन्स को तेज़ी से आपस में जोड़कर निष्पादित किया जा सके। विकिफ़ंक्शन्स का उद्देश्य है काम आसान करना विकासकों का, जो कि किसी भी दूसरी बाहरी लाइब्रेरी की तरह इस भंडार पर भरोसा कर सकते हैं, और अंतिम उपयोगकर्ताओं का, जो कि आवश्यकतानुसार फ़ंक्शन्स कॉल कर सकते हैं, एक ऐसे ढंग से जो कि इस समय केवल अक्सर जावा ऐपलेट्स वाली 1990 के दशक में लिखी गई विशिष्ट वेबसाइटों के माध्यम से एक बहुत असमान कवरेज में उपलब्ध है।

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

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

विकिफ़ंक्सन्स अधिक से अधिक गणना, जो कि सामान्यतः कमांड पंक्ति या फिर कंप्यूटर-प्रेमी उपयोगकर्ताओं के लिए ऐप्स में होती आई है, को वेब पर लाने और पहले न उपलब्ध कार्यक्षमता तक पहुँच को लोकतंत्रीकृत करने की परंपरा को आगे बढ़ाता है। साथ-साथ यह हर तरफ विकासकों की उत्पादकता को बढ़ाएगा, क्योंकि अब StackOverflow जैसी साइटों से उत्तर कॉपी और पेस्ट करने के बजाय वे कोड की एक बड़ी लाइब्रेरी का ही उपयोग कर ले सकते हैं।

विकिपीडिया के असदृश, योगदानकर्ताएँ मौजूदा फ़ंक्शन्स को अपडेट करते रहने की जगह अधिकतर किसी फ़ंक्शन के लिए नए कार्यान्वयन बनाएँगे। कार्यान्वयन स्वचालित रूप से प्रदत्त परीक्षणों या फिर एक-दूसरे के साथ परीक्षित और आगे विश्लेषित किए जा सकते हैं।

कार्यान्वयन कई अलग-अलग प्रोग्रामिंग भाषाओं में लिखे जा सकते हैं, मगर वे दूसरी प्रोग्रामिंग भाषाओं में लिखे फ़ंक्शन्स को कॉल कर पाएँगे। निष्पादन इंजन आसानी से (मगर ज़रूरी नहीं कि सर्वोत्तम निष्पादन क्षमता के साथ) कई भाषाओं में काम कर सकता है। हालाँकि अधिकतर मामलों में एक ही प्रोग्रामिंग भाषा में फ़ंक्शन की रचना करने से निष्पादन की क्षमता में बढ़ोतरी होती है, ऐसा करने की कोई अनिवार्यता नहीं है। कई मामलों में विकास की गति और विकासकों का समय, निष्पादन में इंजन में घटे कुछ अतिरिक्त कंप्यूटर चक्रों से अधिक मूल्यवान होता है।

संदर्भ

  1. m:WikiCite 2017/Jupyter notebooks on Wikimedia sites
  2. PAWS

ये भी देखें