2013-01-15 32 views
5

मैं स्पा और कितना अच्छा यह है के बारे में हाल ही में पढ़ने किया गया है .. मैं सोच रहा था जब मैं का उपयोग करना चाहिए किसी को जब मैं एसपीए उपयोग नहीं करना चाहिए बता सकते हैं या और भी बेहतर अगर के रूप में नियमित रूप से MVCएसपीए, बुरी चीजें?

उत्तर

4

टूलींग के साथ जाने के एमवीसी (रेल, एमवीसी 4) के लिए बहुत अधिक परिपक्व है। पारंपरिक एमवीसी साइटों के विकास पर ध्यान केंद्रित करने वाले बहुत अधिक दस्तावेज हैं। एकल पृष्ठ अनुप्रयोग विकास मुश्किल है। जावास्क्रिप्ट-घने अनुप्रयोगों को लिखना मुश्किल होता है और डीबग करना बेहद मुश्किल हो सकता है।

यदि आप एसपीए में कूदना चाहते हैं, तो Pluralsight.com पर John Papa's video training series देखें - जो मेरे ज्ञान के लिए, एसपीए ऐप्स विकसित करने के लिए सबसे अच्छा प्रारंभिक बिंदु प्रदान करता है। या बैकबोन का अध्ययन करें, लेकिन यह दिल की बेहोश (फींट?) के लिए नहीं है।

एक भविष्य सुझाव: यदि आप एएसपी.Net डेवलपर हैं, तो डेटा प्रबंधन के लिए BreezeJS (http://www.breezejs.com) देखें।

0

यह blog post कामकाज के लिए कुछ सुझावों के साथ एसपीए के साथ कुछ संभावित मुद्दों का एक अच्छा अवलोकन देता है।

संभावित मुद्दों में शामिल हैं:

  • ब्राउज़र स्मृति से निपटने और कचरा संग्रहण में सबसे अच्छा प्रजाति नहीं हैं। खासकर जब डोम हैंडलिंग की बात आती है। उदाहरण के लिए, डीओएम से हटाए गए तत्व स्मृति में रखे गए हैं। अगर हम एक ताज़ा बिना एक लंबे समय के लिए डोम पर काम करने के लिए उन है, ब्राउज़र पुलिस अप करने के लिए संघर्ष हो सकता है स्मृति से जारी

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

  • यदि हमें एक एकल पृष्ठ एप्लिकेशन के रूप में उपलब्ध होने के लिए पूर्ण उत्पाद सूट कार्यक्षमता की आवश्यकता है, तो यह प्रारंभिक लोड समय को प्रभावित करने पर लोड होने पर होने के लिए जेएस/सीएसएस कोड का बहुत अधिक हो सकता है।

1

मैं स्पा और कितना अच्छा यह है के बारे में हाल ही में पढ़ने किया गया है ..

स्पा सिर्फ ब्राउज़र-ग्राहक की जिम्मेदारियों को उलटने के। पारंपरिक सर्वर-साइड अनुप्रयोग बैकएंड में अधिकांश काम करते हैं। एसपीए फ्रंट-एंड पर अधिकांश काम करते हैं।

अच्छी बात है, ग्राहक में विचारों को पैदा करने का मतलब है सामने के अंत devs बैकएंड छू के बारे में चिंता किए बिना ब्राउज़र में अपने डिजाइन के सभी कर सकते हैं।

मॉडल से डिसकप्लिंग दृश्य (यानी दोनों सिरों पर नियंत्रक मौजूद हैं) का अर्थ है कि डेटा को सर्वर पर एक आरईएसटी एपीआई के रूप में उजागर किया जा सकता है और अन्य प्लेटफार्मों (पूर्व मोबाइल, टैबलेट, स्मार्ट टीवी) को लक्षित करने वाले ग्राहकों के लिए फिर से उपयोग किया जा सकता है।

हर बार एक पृष्ठ लोड होता है एक बेहतर उपयोगकर्ता अनुभव के लिए बनाता है ताज़ा करने के लिए की जरूरत को खत्म करना।

मैं सोच रहा था जब मैं का उपयोग करना चाहिए किसी को जब मैं एसपीए उपयोग नहीं करना चाहिए बता सकते हैं या और भी बेहतर अगर के रूप में सर्वर साइड MVC आर्किटेक्चर से स्पा के निर्माण पर स्विच करने के लिए नियमित रूप MVC

साथ जा सकते हैं कुछ के लिए बहुत चुनौतीपूर्ण हो। कई देव जो सर्वर-साइड भाषा में विशेष रूप से काम करते हैं, वे जावास्क्रिप्ट से निपटने से नफरत कर सकते हैं (esp devs जो विशेष रूप से स्थाई रूप से टाइप की गई भाषाओं में प्रोग्राम)।

एसपीए के काम को बनाने के लिए कुछ यूआरएल-रीराइटिंग और वर्कअराउंड रीडायरेक्ट की आवश्यकता होती है। यह उन लोगों के लिए काम करने के लिए एक बहुत ही भ्रमित/परेशान अनुभव हो सकता है जिनके पास सर्वर की निचली स्तर की समझ नहीं है।

उपयोगकर्ता जिनके पास डिफ़ॉल्ट रूप से जावास्क्रिप्ट बंद है, वे साइट को लोड करने में सक्षम नहीं होंगे।

एक एसपीए क्लाइंट पर बहुत अधिक भार प्रस्तुत करता है, मुख्य संदर्भ में चल रहे सब कुछ के साथ यह यूआई धीमा/उत्तरदायी बना सकता है। नए एसपीए ढांचे में इस मुद्दे को हल करने के लिए कामकाज हैं लेकिन इसे ध्यान में रखना अच्छा है।

ब्राउज़र के लिए कोड कोड लिखना सर्वर के लिए कोड लिखने से बहुत अलग है। ब्राउज़र में बहुत अधिक जटिलता (डीओएम पूर्व) है।

सामने के अंत विकास के लिए toolchain क्या आप पाते हैं सबसे सर्वर-साइड भाषा विकसित करने के लिए इस्तेमाल किया जा रहा से काफी अलग है। कुछ प्रोग्रामर अपने आईडीई द्वारा लाइव-एंड-मर जाते हैं।

अजाक्स के माध्यम से डेटा गतिशील रूप से प्राप्त करना कुछ लोगों के लिए सबसे कठिन हो सकता है। विशेष रूप से, देव जो HTTP की ठोस समझ नहीं रखते हैं।


वास्तव में, यह एक प्रश्न पर आता है। क्या आप एसपीए बनाने के तरीके सीखने के लिए समय लेना चाहते हैं?