2012-02-01 13 views
7

कई पुस्तकालयों और संकुल (Crossroads.js, आदि) प्रतीत होते हैं जो इस जावास्क्रिप्ट रूटिंग कार्यक्षमता का समर्थन करते हैं, लेकिन मुझे एक परिदृश्य को समझने में परेशानी हो रही है जहां यह मूल्यवान है।जावास्क्रिप्ट रूटिंग का उपयोग क्यों करें?

किसी को भी परिस्थितियों पर सूप-टू-नट्स जाने की परवाह है जहां यह उपयोगी है?

मेरी पृष्ठभूमि एएसपी.नेट (वेब ​​फॉर्म) प्रोग्रामिंग और कुछ शौकिया जावास्क्रिप्ट/jquery के साथ है।

+0

क्या आप आरेख में लाइन-रूटिंग के बारे में बात कर रहे हैं? –

+0

नहीं, क्रॉस रोड.जेएस जैसे पैकेज के साथ प्राप्त कार्यक्षमता की तर्ज पर। – skeej

+1

जावास्क्रिप्ट आजकल बहुत विकसित हो रहा है, यह बड़े पैमाने पर इसे और अधिक confortable बनाने के बारे में बहुत सारे रुझान हैं, जैसा कि यह नहीं है। ठोस पैटर्न और सर्वोत्तम प्रथाएं होंगी, लेकिन crossroads.js जैसी चीजें नए आधार पर अग्रणी हैं। अजीब पायनियर। – SoonDead

उत्तर

5

यह आपको पूरे पृष्ठ को फिर से लोड किए बिना क्लाइंट व्यवहार को संभालने का विकल्प देता है जैसे कि जब आप रूटिंग सर्वर पक्ष को संभालेंगे तो मामलों के साथ।

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

backbone.js का उपयोग करने के लिए धन्यवाद या अन्य एमवीसी (जैसे) ढांचे आप प्रतिपादन को संभालने के बिना डेटा के साथ काम करने और प्राप्त करने के लिए केवल आरईएसटी एपीआई का पर्दाफाश करने के लिए अपने सर्वर को कम करने में सक्षम हैं और आप कुछ समय से गुजर रहे हैं - या यहां तक ​​कि सबसे अधिक बार - तर्क के लिए ग्राहक।

आजकल अधिकांश वेब ऐप्स क्लाइंट-साइड रूटिंग का लाभ उठा रहे हैं - जीमेल से ट्विटर तक कुछ भी।

+2

क्या आप एक विशिष्ट उदाहरण दे सकते हैं? ऐसे परिदृश्य पर लाभ क्या हैं जहां मेरे पास एक पृष्ठ ऐप है और प्रत्येक प्रमुख अनुभाग में सर्वर पर खुला कुछ AJAX एंडपॉइंट है जो उपयुक्त सामग्री के साथ संबंधित पृष्ठ अनुभाग को रीफ्रेश करता है? – skeej

+2

उचित रूटिंग होने के बजाय यहां या वहां बिखरे हुए AJAX कॉलबैक का मतलब है कि उपयोगकर्ता के लिए यह बहुत आसान और अधिक सुरुचिपूर्ण है क्योंकि यह अभी भी अपने पुराने यूआरएल पते के साथ अच्छा पुराना इंटरनेट है कि वे बुकमार्क, कॉपी और पेस्ट, दोस्तों आदि को पेस्ट कर सकते हैं। और आसानी से पते पर जाकर पेज/ऐप की दी गई स्थिति तक आसानी से पहुंच सकते हैं। उपयोगकर्ता अधिक से अधिक इंटरैक्टिव और निर्बाध अनुभवों के लिए उपयोग कर रहे हैं और ब्राउज़र इन्हें वितरित करने के लिए पर्याप्त तेज़ हो रहे हैं। –

+0

यह AJAX भारी अनुप्रयोगों से केवल एक कदम आगे है और सर्वर साइड डेवलपमेंट और उनके एमवीसी फ्रेमवर्क से हमने सीखा सर्वोत्तम प्रथाओं का अनुकूलन किया है। (फिट नहीं हुआ :)) –

1

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

मैं अभी भी एक कस्टम कार्यक्रम बनाम रूटिंग योजना के सापेक्ष लाभों पर विचार कर रहा हूं।

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