2012-01-05 11 views
11

अधिकांश डेस्कटॉप वेब अनुप्रयोगों में मैंने कभी भी आपके लिए काम किया है, सर्वर-साइड वेब ढांचे की आवश्यकता है। सर्वर-साइड वेब फ्रेमवर्क (स्ट्रूट्स, स्प्रिंग एमवीसी, इत्यादि) में प्रसंस्करण अनुरोधों के लिए कुछ प्रकार का नियंत्रक होता है और फिर गतिशील सामग्री उत्पन्न करने के लिए एक टेम्पलेटिंग इंजन (वेग, जेएसपी, आदि) होता है।मोबाइल वेब अनुप्रयोगों के लिए सर्वर-साइड आर्किटेक्चर

अब मैं मोबाइल वेब अनुप्रयोगों पर काम करना शुरू कर रहा हूं और यूआई फ्रेमवर्क (jQuery मोबाइल, जेक्यू टच, सेन्चा टच इत्यादि) चुनने के आसपास घूमते हुए सभी चर्चाएं देख रहा हूं लेकिन मुझे क्या हो रहा है इसके बारे में कोई चर्चा नहीं दिखाई दे रही है वास्तव में HTTP अनुरोधों को संसाधित करने या HTML, CSS, और जावास्क्रिप्ट उत्पन्न करने के लिए सर्वर-साइड।

क्या इसका मतलब यह है कि अधिकांश मोबाइल वेब एप्लिकेशन सर्वर-साइड वेब ढांचे का उपयोग नहीं करते हैं ... जिसका अर्थ है कि सर्वर स्थैतिक सामग्री प्रदान करता है, अधिकांश इंटरैक्टिव व्यवहार जावास्क्रिप्ट में कोडित है, और केवल सर्वर-साइड कोड है आरएसएस सेवाएं जो जावास्क्रिप्ट क्लाइंट लोड करती है?

यदि मैं सर्वर-साइड वेब ढांचे का उपयोग करना चाहता हूं तो यह एक बुरा विचार होगा? मुझे किस समस्या का सामना करना पड़ेगा? क्या किसी के पास वेब ढांचे पर एक सिफारिश है जो एक उत्पादक मंच होगा और jQuery मोबाइल जैसे मोबाइल यूआई ढांचे के "रास्ते में नहीं" होगा?

नोट: जिन डेवलपर्स के साथ मैं काम करता हूं वे ज्यादातर एंटरप्राइज़ जावा पृष्ठभूमि से आते हैं, हालांकि, मैं इसे केवल जावा-आधारित वेब फ़्रेमवर्क तक ही सीमित नहीं करता। वहाँ अन्य ढांचे हैं जिनके पास जावा में जड़ें हैं जिन्हें माना जा सकता है (Grails, लिफ्ट, आदि)।

उत्तर

13

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

कहा जा रहा है कि से बचने के लिए सर्वर साइड टेक्नोलॉजीज होगी और इससे कोई भी आपके लिए फ्रंट एंड उत्पन्न करेगा लेकिन jQuery का उपयोग नहीं कर रहा है। आज सभी वेबसाइटों में से 45% से अधिक jQuery का उपयोग करते हैं और यदि आप कुछ और चुनते हैं, तो आप मौजूदा मोबाइल ढांचे के साथ तुरंत बाधाओं में होंगे। (जीडब्ल्यूटी, आइसफेस, मैं आपको देख रहा हूं)।

शायद सबसे सुरक्षित और सबसे लचीला तरीका या तो स्प्रिंग आधारित कार्यान्वयन या Prime Faces का उपयोग करेगा। वसंत मोबाइल देखने लायक है। प्राइम फेस वास्तव में jQuery मोबाइल लागू करता है और थीम रोलर का उपयोग करके थीम-सक्षम है।

सामान्यतः, यह वास्तव में कोई फर्क नहीं पड़ता कि बैकएंड फ्रेमवर्क (यदि कोई है) जो आप तब तक उपयोग करते हैं जब आप अच्छे मार्कअप को दबा रहे हैं। ब्राउज़र परवाह नहीं है और केवल एक चीज है जिसके बारे में उपयोगकर्ता की देखभाल एक अच्छा अनुभव है। तो, जो भी अपने देवताओं को बैकएंड के लिए खुश कर देगा, जब तक वह रास्ते में नहीं पहुंचता है।

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

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

0

ItsNat पर एक नज़र डालें, ItsNat आपको क्लाइंट जावास्क्रिप्ट में सोचने के लिए आमंत्रित करता है लेकिन जावा में कोडिंग करता है और क्लाइंट को एक ही जेएस कोड उत्पन्न करने वाले सर्वर में निष्पादित करता है।

जीडब्ल्यूटी के साथ अंतर है, जावा डब्ल्यू 3 सी डोम कोड सर्वर में निष्पादित किया गया है और जेएस स्वचालित रूप से जेनरेट किया गया है, इस बीच ग्राहक में जीडब्ल्यूटी निष्पादित किया गया है, सर्वर डेटा क्लाइंट को ले जाना चाहिए।

संबंधित मुद्दे