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