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