इसका कारण स्थिरता है ।
सर्वर की ओर, मैं स्थिर घटकों को चुन सकता हूं। आमतौर पर इसका मतलब है कि मैं जावा और फ्रीमर्कर जैसे बहुत सावधानी से चुने गए पुस्तकालयों का एक गुच्छा चुनता हूं। कहने की जरूरत नहीं है, जावा के मानक पुस्तकालयों के अलावा प्रत्येक पुस्तकालय को डिस्पोजेबल के रूप में माना जाता है, इसलिए मैं स्वयं-निर्मित आवरण के माध्यम से बाहरी पुस्तकालयों का उपयोग करता हूं। इसका मतलब है कि आवश्यकता पड़ने पर मैं एक पुस्तकालय से दूसरे में आसानी से बदल सकता हूं।
जब भी मैं जावा को एक नए संस्करण में अपडेट करता हूं, यह आमतौर पर अच्छी तरह से काम करता है क्योंकि जावा प्रमुख संस्करण अपडेट में भी एक अत्यंत स्थिर घटक है। और यह भी, मेरे पास मौजूद हर सर्वर एक ही जावा संस्करण चला रहा है। प्रत्येक क्लाइंट समान जावास्क्रिप्ट कार्यान्वयन नहीं चला रहा है।
क्लाइंट की ओर, मैं स्थिर घटकों का चयन नहीं कर सकता। ब्राउज़र निर्माता मुझे जावास्क्रिप्ट का चयन करने के लिए मजबूर करेंगे, एक ऐसी भाषा जो मुझे विशेष रूप से पसंद नहीं है, लेकिन एक जिसे मैं उपयोग करने के लिए मजबूर हूं। (और मुझे उन भाषाओं के बारे में न बताएं जो जावास्क्रिप्ट में संकलित हैं, वे भयानक हैं!) हर ब्राउज़र का जावास्क्रिप्ट कार्यान्वयन अलग है। इसका मतलब यह है कि यह कुल समर्थित नरक संस्करण के साथ मेरे उत्पाद का परीक्षण करने के लिए एक कुल नरक है।
मेरा हल? मैं सर्वर की ओर से जितनी प्रोसेसिंग कर सकता हूं, करता हूं, और क्लाइंट साइड केवल एक हल्का आवरण है, जो सर्वर को डेटा भेजता है और JSON और HTML टुकड़े के रूप में सर्वर से डेटा प्राप्त करता है। XML से बचें; इसके बजाय JSON का उपयोग करें।
मैं क्लाइंट-साइड टेंपलेटिंग नहीं करता; मैं सर्वर पर एक HTML टुकड़ा करने के लिए सामग्री है कि मैं तो .innerHTML
ग्राहक पक्ष पर विभिन्न प्लेसहोल्डर तत्वों के लिए विशेषता का उपयोग सौंपना । यह प्रौद्योगिकी को यथासंभव सरल रखता है, क्योंकि मुझे दो टेम्पलेट इंजन (एक जावा एक और एक जावास्क्रिप्ट) की आवश्यकता नहीं है।
दोष स्पष्ट रूप से प्रकाश की विलंबता है; महाद्वीपों के बीच विलंबता का आधा सेकंड असामान्य नहीं है।
विचार करें कि आपके ग्राहक इन दिनों स्मार्टफोन हो सकते हैं। स्मार्टफ़ोन में एक सीमित बैटरी जीवन होता है, इसलिए यदि आप भारी गणना कर रहे हैं, तो इसे अपने सर्वर पर ऑफ़लोड करना बेहतर होगा। हालाँकि, क्लाइंट की तरफ से सरल चीजें अधिक ऊर्जा-कुशल हो सकती हैं क्योंकि तब आप रेडियो एक्सेस से बच सकते हैं। लेकिन मुख्य तर्क, स्थिरता, इसका मतलब यह हो सकता है कि यह वास्तव में सर्वर के लिए सरल गणना को भी लोड करने का मतलब हो सकता है।
एक परिशिष्ट के रूप में, जैसा कि पहले से ही कुछ उत्तरों में देखा गया है, आप सुरक्षा भी प्राप्त करते हैं। यदि एप्लिकेशन लॉजिक पूरी तरह से क्लाइंट साइड पर है, तो कोई व्यक्ति आपके ऑनलाइन वेब शॉप से जो भी चीज खरीदने जा रहा है, उसकी कीमत निर्धारित कर सकता है।