मैं एक वेब डेवलपर हूं, और मैंने देखा है कि कई बार मुझे क्लाइंट और सर्वर दोनों पर एक ही फ़ंक्शन की आवश्यकता होती है। तो मैं इसे जेएस में और PHP में या जो भी सर्वर साइड भाषा में लिखता हूं। मैं इसके साथ तंग आ गया हूँ। अगर मुझे इसे बदलना है तो मुझे इसे दोनों जगहों में बदलना होगा। अगर मैं इसे कुछ हाथों वाले उपकरणों के लिए उपयोग करना चाहता हूं, तो मुझे उस कोड को फिर से उद्देश्य-सी या जावा आदि का उपयोग करके फिर से लिखना होगा। फिर यदि मुझे उस फ़ंक्शन को बदलने की ज़रूरत है तो मुझे इसे हर जगह बदलना होगा।कई अलग-अलग भाषाओं में एक ही एल्गोरिदम लिखने से बचें
क्या इसके लिए कोई समाधान है? अगर मैं AJAX के माध्यम से कुछ webservice को कॉल करूंगा, तो क्लाइंट में देरी होगी। यदि यह जेएस में होगा तो इसे PHP या जावा, आदि से एक्सेस नहीं किया जा सकता है। यदि मैं किसी अन्य भाषा से PHP में कुछ सेवा का उपयोग करता हूं तो यह एक प्रदर्शन समस्या भी बन सकता है।
यह भी संभव है कि कुछ समय हमें कुछ पैरामीटर से डीबी या डीबी के बिना इनपुट के रूप में ऐसे फ़ंक्शन आउटपुट की आवश्यकता हो।
मुझे पता है कि कुछ सुंदर सरल समाधान होगा लेकिन मुझे इसके बारे में पता नहीं है। कृपया कुछ भाषा स्वतंत्र समाधान बताएं क्योंकि मेरे पास वीपीएस हमेशा नहीं है।
मुझे यकीन नहीं है कि मेरा प्रश्न वास्तव में stackoverflow.com या programmers.stackexchange.com से संबंधित है, तो कृपया इसे इस प्रश्न को बंद करने के बजाय प्रोग्रामर.स्टैक एक्सचेंज.com पर स्थानांतरित करें, यदि यह वहां से संबंधित है।
आप हमेशा यह सामान्य कार्यक्षमता प्रदान करने के लिए एक वेब सेवा बना सकते हैं। वेब सेवा आमंत्रण कोड अलग-अलग होगा, लेकिन जो कुछ भी आप चाहते थे उसका कार्यान्वयन सामान्य रहेगा। जाहिर है यह इस बात पर निर्भर करता है कि आप इसके साथ क्या कर रहे हैं, लेकिन यह संभव है। – doogle
यह अस्पष्ट है कि आप क्लाइंट और सर्वर पर एक ही फ़ंक्शन क्यों लिख रहे हैं। यह कैसे काम करता है, बिल्कुल, और आपको ऐसा करने की आवश्यकता क्यों होगी? – kennebec
@doogle मुझे पता है कि यह सामान्य बात है इसलिए यह संभव होना चाहिए, लेकिन दिए गए परिदृश्य में यह कैसे काम कर सकता है कि ब्राउज़र ब्राउज़र के साथ-साथ हैंडहेल्ड डिवाइसों में भी उपयोग किया जा सकता है, चाहे जावा या सी आदि का उपयोग कर, कोई मतलब उपयुक्त हो प्रारूप? मुझे लगता है कि जेसन निकट है? लेकिन फिर भी जेएस को इसे रनटाइम पर लोड करने की आवश्यकता होगी। – Hafiz