2009-02-03 6 views
7

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

उत्तर

1

रूबी रास्ता पाठ प्रसंस्करण से संबंधित कुछ पर बेहतर है, और लचीला किया जा रहा है पर बहुत अच्छा है दे, कि डेवलपर्स शक्ति बहुत ही सुंदर, पठनीय कोड लिखने के लिए दे रहा है,। यदि आप गति चाहते हैं, तो यह जगह नहीं है, लेकिन बहुत सी चीजों के लिए इससे कोई फर्क नहीं पड़ता।

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

1

जो चीजें मुझे रूबी में सबसे ज्यादा पसंद करती हैं, पाइथन के विपरीत, ब्लॉक और retry कमांड हैं। यह वास्तव में उपयोगी है और अविश्वसनीय रूप से अधिक सुगम कोड का कारण बन सकता है।

0

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

2

रूबी एक अच्छी भाषा है जिसमें "आंतरिक डोमेन-विशिष्ट भाषाएं", डीएसएल को संक्षिप्त रूप से डिजाइन और उपयोग करने के लिए एक अच्छी भाषा है। एक डीएसएल विशेष रूप से कुछ विशेष व्यापार डोमेन का प्रतिनिधित्व करने के लिए डिज़ाइन किया गया एक नोटेशन है; मेजबान प्रोग्रामिंग भाषा के साथ असंगत नोटेशन के बीच अंतर करने के लिए "आंतरिक" (उदाहरण उदाहरण प्रोजेक्ट बिल्ड फाइलों के लिए एक्सएमएल नोटेशन होगा) और नोटेशन जो मेजबान भाषा का एक रूप है (उदाहरण के लिए, मेक के रूबी समकक्ष, जिसे रेक कहा जाता है) । उदाहरण देखें Martin Fowler's article

रखरखाव लिपियों:

8

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

  1. यह वास्तव में आसान है एक स्क्रिप्ट के साथ आरंभ करने के लिए:

    वहाँ कि रूबी वास्तव में इस के लिए अच्छा बनाने के लिए कुछ चीजें हैं। Rake जैसे टूल को व्यवस्थित करने के लिए डिज़ाइन किया गया है, और मुझे शुरू करने के लिए अतिरिक्त फ्रेमवर्क जंक का समूह बनाने की आवश्यकता नहीं है।

  2. पुस्तकालय। मुझे पता है कि अन्य भाषाओं में माना जाता है कि बेहतर पुस्तकालय हैं, लेकिन अब तक रूबी के पुस्तकालयों ने मेरी ज़रूरतों को पूरा किया है। और RubyGems इसे मैन्युअल रूप से डाउनलोड और इंस्टॉल किए बिना लाइब्रेरी इंस्टॉल करना वास्तव में आसान बनाता है।

  3. रूबी में कई निर्मित सुविधाएं हैं जो फ़ाइलों को पढ़ने और प्रसंस्करण को वास्तव में सरल बनाती हैं।

  4. DSLs। ऐसे कई कार्य हैं जो दोहराए जाते हैं और डोमेन विशिष्ट भाषाओं को बनाने के लिए खुद को उधार देते हैं। रूबी का एक बहुत ही लचीला वाक्यविन्यास है और इसमें कुछ कार्यात्मक पहलू हैं जो आपको अपने कार्यक्रम लिखने के तरीके में बहुत लचीलापन देते हैं। अक्सर, आप एक सामान्य डीएसएल में सामान्य कार्यक्षमता को लपेट सकते हैं जो आपके कार्य के लिए उपयुक्त है।

दूसरी बात मैं (कुछ हद तक) के लिए रूबी का उपयोग वेब विकास है। Ruby on Rails ढांचा जो मैंने ज्यादातर उपयोग किया है, लेकिन मैंने घोषणा से पहले मेर्ब के साथ खेला कि यह रूबी पर रेल के साथ विलय कर रहा था।

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

मुझे लगता है कि बहुत से लोग रूबी के बारे में ऐसा ही महसूस करते हैं, और समुदाय अभी भी बहुत सक्रिय और जीवंत लगता है। मुझे लगता है कि यह सीखने के लिए एक अच्छी भाषा है कि काफी समय तक इसका इस्तेमाल किया जा रहा है।

+0

"रखरखाव स्क्रिप्ट" बिंदु पर, "रूबी के साथ एंटरप्राइज़ इंटीग्रेशन" नामक एक बहुत अच्छी किताब है, रूबी के साथ एक साथ चिपकाने के तरीके पर एक पूरी किताब। मुझे कोई अन्य भाषा नहीं है जिसमें इसमें एक गोंद कोड लिखने के लिए समर्पित एक संपूर्ण पुस्तक है। – womble

+0

ओह, दिलचस्प। मैंने उस पुस्तक के बारे में नहीं सुना था। रूबी वे सभी प्रकार की चीजों के लिए रूबी का उपयोग करने के बारे में सिखाई गई एक और पुस्तक रूबी वे है। –

0

रूबी प्रोटोटाइप के लिए बहुत अच्छा है। यह आश्चर्यजनक है कि आप कितनी तेजी से रूबी में अवधारणा का एक प्रोफेसर लिख सकते हैं। भाषा आपको जो कुछ भी चाहिए वह आपको देता है और आपके रास्ते से बाहर रहता है

0

@gs: रुबी ने हाल ही में सुविधा को वापस ले लिया है। रूबी में


लैम्ब्डा भाव बहुत हल्के वाक्य रचना का उपयोग, उन्हें छद्म अदृश्य बना रही है।

अज्ञात ब्लॉक जैसे अस्पष्ट चीजें प्रदान की जाती हैं, (मुझे वर्तमान में इस प्रावधान में कई अन्य भाषाओं से अनजान है)।

सिंटेक्स स्थिरता मौजूद है, यहां तक ​​कि दूसरों के स्थान पर उपयोग किए जाने वाले तरीकों के साथ, यह एक अंग्रेजी वातावरण है, जो एक पर्यावरण बना रहा है जहां नौसिखियों के सबसे अज्ञानी भी सहज महसूस करेंगे। कोड बहुत छोटा है, और कॉम्पैक्ट पारंपरिक सी/जावा और पायथन मंत्र।

सब कुछ एक वस्तु है।

यह आंतरिक डोमेन-विशिष्ट भाषा कुशलता और नियंत्रण के लिए अनुमति देता है।

शायद दर्जनों और अधिक सूची में सूचीबद्ध हो सकते हैं, और इससे भी अधिक विपक्ष; मैं दैनिक आधार पर छोटे त्वरित और गंदे कार्यक्रम लिखना चाहता हूं; मैं इसमें बहुत लंबे समय से कोडिंग नहीं कर रहा हूं, लेकिन निश्चित रूप से कुछ शुरुआत करने वाले को देखना चाहिए। मुझे पता है कि मैं इसके साथ काम करने का आनंद लेता हूं :)

यदि आप रूबी सीखना चाहते हैं तो आपको शायद this पर देखना चाहिए। तुम भी बस एक्सेल मैक्रो और हेवी-ड्यूटी/रूबी के साथ लंबे समय से चल गणितीय कार्य के अलावा सब कुछ के बारे में this पढ़ना चाहिए भी

The Ruby Programming Language http://www.rubyinside.com/wp-content/uploads/2008/02/hummingbird-book-the-ruby-programming-language.jpg

+0

@Achluon: नहीं हो सकता! कोई विचार क्यों? –

4

मैं कोड। और मैं आमतौर पर रुबी में बाद में प्रोटोटाइप करता हूं। मैंने थोड़ी देर के लिए कोई गैर-वेब यूआई सामान नहीं लिखा है और इसके लिए रूबी का उपयोग करने के बारे में दो बार सोचना होगा, हालांकि ईमानदार होने के लिए मैं इसे करने के बारे में दो बार सोचूंगा। shoes और wxRuby दिलचस्प हैं।अगर मैं एक खेल लिखने के लिए जा रहा था, मुझे लगता है कि अपने सीमित महत्वाकांक्षा द्वारा gosu

अभी, "सब कुछ" ज्यादातर के होते हैं के लिए पूरा किया जा जाएगा:

  • रेल और संबंधित सामान
  • टास्क स्वचालन और पटकथा
  • Project Euler पहेली कोडिंग

"क्या बेहतर कर रहा है?" थोड़ा सा व्यक्तिपरक है। मैं इसे मूल रूप से ऑब्जेक्ट उन्मुख डिजाइन के कारण कम से कम भाग में पाइथन और पर्ल पसंद करता हूं। मुझे पर्ल के करीब, इसकी पठनीयता पसंद है लेकिन अधिक पठनीय है। मुझे अंतर्निर्मित कक्षाओं की खुलीपन पसंद है, जिससे मुझे नई कक्षाएं बनाने के बजाय तरीकों को जोड़ने की अनुमति मिलती है। मैं वैकल्पिक कार्यान्वयन की विविधता से प्रभावित हूं जो दिखाई दे रहा है और नई समस्या डोमेन के लिए एक आरामदायक वाक्यविन्यास लागू करने की क्षमता है।

यह बिजली-तेज नहीं है (हालांकि यह तेजी से हो रहा है) लेकिन ईमानदार होने के लिए, अधिकतर यह पर्याप्त तेज़ है: मेरे पास 10 मिलीसेकंड और 10 माइक्रोसॉन्ड लेने वाले कार्यक्रमों के बीच एक महत्वपूर्ण अंतर नहीं है।

0

हर मामले में जहां मैं पहले एक पर्ल स्क्रिप्ट का उपयोग करता हूं: सिस्टम प्रशासन स्क्रिप्ट, टेक्स्ट प्रोसेसिंग, ओरेकल, एलडीएपी जैसे डेटाबेस तक पहुंच। शायद वर्तमान में मेरे 95% प्रोग्रामिंग रूबी में किया जाता है। रेल अनुप्रयोगों पर रूबी जैसे वेब अनुप्रयोग बुद्धि ढांचे & मेरब।

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