2010-01-14 4 views
5

मैं claims सुनता हूं कि रेल पर रूबी वेब अनुप्रयोगों को लिखने के लिए दस गुना तेज बनाता है। क्या यह वास्तव में सच है? क्या वे साधारण सामान को तेजी से बनाने और कठिन सामान को असंभव बनाने के लिए औजारों का एक गुच्छा बनाते हैं (गंभीर रिफैक्टरिंग के बिना)? क्या यह उन्नत वेब समस्याओं जैसे उन्नत खोजों और AJAX वेबग्रिड्स को संभाल सकता है? क्या अन्य भाषाएं रेल तकनीक का उपयोग नहीं कर सकती हैं और कोड के जितनी जल्दी हो सकती हैं?रेल पर रूबी वास्तव में कोड विकसित करने के लिए बहुत तेज है?

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

उत्तर

5

मार्टिन फाउलर ने survey on Ruby on Rails productivity को 30 परियोजनाओं से पूछकर पूछा कि उनका विषयपरक अनुमान "सर्वोत्तम मुख्यधारा के उपकरण" के मुकाबले आरओआर की उत्पादकता का क्या था। चार्ट कम से कम 2x सुधार दिखाना प्रतीत होता है।

@hgimenez नोट्स के रूप में, यह सर्वेक्षण फाउलर के Ruby at ThoughtWorks का हिस्सा है, जो इस मुद्दे पर बहुत अधिक प्रकाश डालता है।

+0

वह सर्वेक्षण प्लस इस आलेख (http://martinfowler.com/articles/rubyAtThoughtWorks.html) को पढ़ना आवश्यक है। – hgmnz

+0

इस प्रश्न पर बहुत से अच्छे जवाब, लेकिन इस आलेख में कुछ बेहतरीन अंतर्दृष्टि दी गईं। हालांकि, मुझे इसकी पूर्वाग्रह पर सवाल उठाना चाहिए। – User1

4

दस बार शायद एक खिंचाव का थोड़ा सा हिस्सा है, लेकिन मुझे यह कहना होगा कि आरओआर के साथ विकास करना एएसपी.नेट के मुकाबले काफी तेज़ है, जो मेरा अन्य वेब विकास टूलकिट है।

3

मैंने पाया यह थोड़ा तेज सरल परियोजनाओं मैं पर काम किया है के लिए हो सकता है क्योंकि

  1. रूबी की वाक्य रचना जावा जैसे कुछ अन्य भाषाओं की तुलना में अधिक संक्षिप्त है और सी #
  2. रेक उपकरण स्वचालित फ़ाइल सेटअप काम
  3. रेल का एक बहुत विन्यास से अधिक सम्मेलन का उपयोग करता है, तो जब तक आप अपनी मान्यताओं का पालन करें, एक बहुत है कि आप कॉन्फ़िगर करना

ग्रेल की जरूरत कम नहीं है एस जावा/ग्रोवी भाषा में रेल का एक psuedo-port है, और समान लाभ प्रदान करता है (अधिक कॉम्पैक्ट भाषा, एक समान रेक-शैली उपकरण, और कॉन्फ़िगरेशन पर सम्मेलन)।

चेतावनी: यदि आप पहले से ही किसी अन्य भाषा या ढांचे में बहुत अच्छे हैं, और इस परियोजना के लिए समय-दर-बाज़ार आपका अंतिम लक्ष्य है, तो आप शायद जो जानते हैं उसके साथ चिपके रहना बेहतर होगा। यदि यह एक सीखने का अनुभव है, तो मैं कहता हूं कि आरओआर का प्रयास करें।

20

मान लें कि मेरे पास वास्तव में एक अच्छा (कुछ जटिल) वेबपैप का विचार है और इसे एएसएपी से बाहर करना चाहते हैं, क्या रेल पर रुबी मुझे किनारे देगी या वह दावा सिर्फ प्रचार है?

मुझे लगता है कि रेलों के छोटे मामले के पीछे एक सीधी सीखने की वक्र है, और दस्तावेज़ीकरण बल्कि दुर्लभ है। आपकी पहली परियोजना तेज नहीं होगी, खासकर अगर यह कुछ जटिल है।

यदि आप बाजार में कुछ लाने की कोशिश कर रहे हैं और समय सार का है, तो समय में आप रेल सीखने के लिए खो देंगे और फिर आपकी सभी नौसिखिया गलतियों को दोबारा शुरू करने से आप रेलवे से प्राप्त उत्पादकता से अधिक हो जाएंगे।

मुझे रेल पसंद है, और लगता है कि यह सीखने लायक है, लेकिन अज्ञात प्रौद्योगिकियों के साथ अनुसूची दबाव संयोजन आपदा के लिए एक नुस्खा है।

यदि आपको अभी तेजी से जाना है, तो आप जो जानते हैं उसका उपयोग करें। यदि आपके पास समय है, तो इसे रूबी और रेल को सही तरीके से सीखने के लिए लें।

+1

बिल्कुल सही। आपको "उत्पादन परियोजना" का उपयोग "सीखने की परियोजना" के रूप में नहीं करना चाहिए – kikito

+0

+1 मुझे यह उत्तर भी पसंद है। काश मैं एक से अधिक जवाब चुन सकता हूं। – User1

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