मैं उल्का के लिए नहीं बोल सकता, लेकिन मैं पाल पर थोड़ी पृष्ठभूमि प्रदान करने में मदद कर सकता हूं क्योंकि मैंने इसे बनाया है।
tldr;
पाल वेब की सभी समस्याओं के लिए रामबाण नहीं है - लेकिन मेरा मानना है कि नोड.जेएस है। Sails का लक्ष्य नोड पर निर्मित पूर्ण, स्केलेबल, स्टार्टअप और उद्यम-अनुकूल अनुप्रयोगों के विकास के लिए एक व्यावहारिक ढांचा प्रदान करना है। मैंने इस सवाल के साथ बलडरश की शुरुआत की "क्या हम सब कुछ के लिए नोड्स.जेएस का उपयोग कर सकते हैं?"। पाल जवाब है।
हमारे नए डॉक्स से :
बेशक, एक वेब फ्रेमवर्क है। लेकिन एक कदम पीछे हटो। इसका क्या मतलब है? कभी-कभी, जब हम "वेब" का संदर्भ देते हैं, तो हमारा मतलब "फ्रंट-एंड वेब" होता है। हम वेब मानकों या HTML 5, या CSS 3 जैसी अवधारणाओं के बारे में सोचते हैं; और बैकबोन, या कोणीय, या jQuery जैसे ढांचे। एक वेब फ्रेमवर्क के "Sails" उस तरह के नहीं हैं। सेल्यूलर और बैकबोन के साथ महान काम करता है, लेकिन आप उन पुस्तकालयों के बजाय सेल का उपयोग कभी नहीं करेंगे।
दूसरी ओर, कभी-कभी जब हम "वेब फ्रेमवर्क" के बारे में बात करते हैं, तो हमारा मतलब "बैक-एंड वेब" होता है। यह REST, या HTTP या WebSockets जैसी अवधारणाओं को उद्घाटित करता है; और जावा, या रूबी, या Node.js. जैसी तकनीकों पर बनाया गया है एक "बैक-एंड वेब" फ्रेमवर्क आपको एपीआई बनाने, डेटाबेस के साथ बातचीत करने, एचटीएमएल फ़ाइलों की सेवा करने और एक साथ सैकड़ों हजारों उपयोगकर्ताओं को संभालने में मदद करता है। Sails वेब फ्रेमवर्क की "उस तरह की" है।
कुछ साल पहले, मैंने हर चीज़ के लिए Node.js का उपयोग करने की प्रतिबद्धता की- यह पहली नजर में प्यार था । मैंने एक्सप्रेस और सॉकेट के शीर्ष पर पाल बनाए। क्योंकि वे (और अभी भी) अपने संबंधित उपयोग के मामलों के लिए सबसे अच्छी तरह से स्थापित नोड मॉड्यूल हैं। सॉकेट में अनुरोध-हैंडलिंग कोड एक्सप्रेस-संगत है, सॉकेट के लिए निहित समर्थन के अतिरिक्त लाभ के साथ।
पाल को कोणीय, बैकबोन, iOS / ObjC, एंड्रॉइड / जावा में अपने फ्रंट-एंड (ओं) के निर्माण के लिए आपके पास जो भी रणनीति है, उसके अनुकूल होने के लिए डिज़ाइन किया गया है, या यहां तक कि किसी अन्य वेब सेवा या आपके द्वारा उपयोग की जाने वाली कच्ची एपीआई की पेशकश करने के लिए भी डेवलपर समुदाय। यदि आप अपना दृष्टिकोण बदलना (उदाहरण के लिए बैकबोन से एंगुलर पर स्विच करना) या पूरी तरह से एक नया फ्रंट-एंड का निर्माण कर रहे हैं (जैसे विंडोज फोन देशी ऐप का निर्माण), तब भी आपका सेल ऐप काम करेगा। जैसा कि आप पहले से ही जानते हैं, कुछ लोग इस दृष्टिकोण को सर्विस ओरिएंटेड आर्किटेक्चर कहते हैं, या एसओए ( जो मैककेन विषय पर एक महान है।)
उसी लाइनों के साथ, पाल वेब सर्वर के निर्माण के लिए अन्य परिचित सम्मेलनों को बनाए रखता है - एक मानक एमवीसी संरचना, स्वच्छ एपीआई बनाने की क्षमता, और कोर मॉड्यूल जो खुले, कॉन्फ़िगर करने योग्य, एक्स्टेंसिबल और यहां तक कि स्वैपेबल हैं। इसका मतलब यह है कि सेल को अपने उपयोगकर्ताओं की आवश्यकताओं के अनुसार फिट किया जा सकता है, जैसा कि आवश्यक है निम्न स्तर।
2013 में, फ्रेमवर्क ने लोकप्रियता में कुछ जबरदस्त वृद्धि का अनुभव किया, और हमारे परामर्श व्यवसाय में वृद्धि हुई। बाकी कोर मेंटेनर और मैंने बैकेंड डेवलपमेंट को जल्द से जल्द और सीधा करने पर अपना ध्यान केंद्रित किया। सेलों के संबंधित पहलू जैसे हुक (प्लग), परीक्षण और डॉक्स सभी पिछले साल की तुलना में एक लंबा सफर तय कर चुके हैं, जो हमारी कोर टीम और बड़े पैमाने पर (कभी न फैलने वाले) दोनों समुदाय के प्रयासों की बदौलत है। बहुत सारे रोडमैप आइटम हैं जो हम अभी भी काम कर रहे हैं, लेकिन मेरा मानना है कि नोड्स आज नोड पर स्थिर, बनाए रखने योग्य एमवीसी विकास के लिए सबसे अच्छा विकल्प है। बाकी टीम और मैं इसके निरंतर रखरखाव और सुविधा विकास के लिए प्रतिबद्ध हैं, और जब से हम इसे अपने सभी ग्राहक परियोजनाओं के लिए उपयोग करते हैं, यह कहीं भी नहीं जा रहा है।
मैं सिर से अधिक ऊँची एड़ी के जूते वहाँ बाहर सबसे अच्छा वेब फ्रेमवर्क बनाने के लिए प्रतिबद्ध हूँ, लेकिन Node.js. की कीमत पर कभी नहीं कोर टीम और मैं लगातार नोड ईकोसिस्टम की वृद्धि के लिए समर्पित हैं, और इसका मतलब है कि एनपीएम को गले लगाना, मौजूदा नोड प्रौद्योगिकियों और सर्वोत्तम प्रथाओं का लाभ उठाना, आदि न केवल इसलिए कि यह अधिक समझ में आता है, बल्कि इसलिए कि हम एनओडी .जे डेवलपर्स हैं। हमारे सभी प्रयासों की प्रेरणा नोड को अधिक सुगम बनाना है, न कि इसे सुपरसाइड करना। इसलिए, अगर, कुछ अजीब समानांतर ब्रह्मांड में, मुझे पाल को किसी अन्य भाषा में परिवर्तित करने, या पूरी तरह से खंदक खाई के बीच एक Faustian विकल्प दिया गया था, लेकिन फिर भी नोड का उपयोग करने में सक्षम होने के बाद, मैं बाद वाला चुनूंगा।
अतिरिक्त संसाधन:
एफएक्यू | पाल 101 | मूल पेचकश | योगदान गाइड | स्टैक ओवरफ़्लो
Google समूह | रोडमैप | IRC: Freenode पर #sailsjs | स्थिति बनाएँ