रूबी प्रोग्रामिंग भाषा के कई व्यावहारिक उपयोग हैं।
लेकिन बात यह है...
बहुत से लोग रूबी की ओर आकर्षित होते हैं क्योंकि रूबी ऑन रेल्स के कारण। रेल्स एक फ्रेमवर्क है। एक फ्रेमवर्क उपकरणों का एक सेट है जो आपको वेबसाइट्स, या वेब एप्लिकेशन, बनाने में मदद करता है, यदि आपको स्क्रैच से शुरू करना होता तो उससे आसान और तेज़।
यह ठीक है।
लेकिन रूबी अपने आप में एक सुंदर प्रोग्रामिंग भाषा है, और इसके साथ कुछ समय बिताने के बाद आप इससे प्यार करेंगे!
अब सवाल यह है...
क्या रूबी केवल वही तक सीमित है जो रेल्स कर सकता है?
नहीं!
बिल्कुल नहीं।
रूबी एक सामान्य प्रोग्रामिंग भाषा है।
सिद्धांत रूप में, आप रूबी से कुछ भी बना सकते हैं जो आप चाहते हैं।
अब:
कुछ बनाना कितना कठिन है यह दूसरी कहानी है।
यह इस पर निर्भर करता है कि कौन से जेम्स और लाइब्रेरीज़ उपलब्ध हैं क्योंकि ये जेम्स आपके लिए बहुत सारा भारी काम करते हैं।
रूबी से आप क्या बना सकते हैं
यदि आपको प्रेरणा की आवश्यकता है तो यहां कुछ उदाहरण हैं:
- फुल-स्टैक वेब डेवलपमेंट
- वेब स्क्रैपिंग और क्रॉलिंग
- स्टेटिक वेबसाइट जनरेटर्स
- कमांड-लाइन मीडिया प्लेयर (FFI + libVLC का उपयोग करके) और अन्य कमांड-लाइन टूल्स
- ऑटोमेशन, बैकअप और DevOps टूल्स
- सर्वर्स
- पार्सिंग, डेटा सफाई और फ़िल्टरिंग
- API क्लाइंट्स (जैसे ट्विटर API या गिटहब API)
- रिपोर्ट जनरेटर्स (PDF, HTML, CSV)
यह एक अच्छी सूची है!
आप इन सभी चीजों को कर सकते हैं और उन्हें प्रोडक्शन स्तर पर डिलीवर कर सकते हैं।
कम व्यावहारिक, लेकिन फिर भी करने योग्य:
- गेम्स (gosu / Ruby2D)
- डेटा साइंस
- मशीन लर्निंग और AI
ये आप ज्यादातर व्यक्तिगत प्रोजेक्ट्स और मनोरंजन के लिए कर सकते हैं।
बाकी सब?
आप अभी भी कर सकते हैं, बिल्कुल, लेकिन इसमें बहुत अधिक काम, कोड और डोमेन ज्ञान लगेगा।
लोकप्रिय ओपन-सोर्स रूबी प्रोजेक्ट्स
मैं आपको रूबी से बने प्रोजेक्ट्स की एक सूची देना चाहता हूं ताकि आप प्रेरित हो सकें और देख सकें कि क्या संभव है।
इन सभी प्रोजेक्ट्स में 4k+ GitHub स्टार्स हैं।
रेल्स ऐप्स:
- https://github.com/postalhq/postal (ईमेल इनबॉक्स)
- https://github.com/huginn/huginn (इवेंट नोटिफिकेशन)
- https://github.com/discourse/discourse (फोरम सॉफ्टवेयर)
- https://github.com/gitlabhq/gitlabhq (वेब-आधारित गिट इंटरफेस, गिटहब की तरह)
नॉन-रेल्स ऐप्स:
- https://github.com/puma/puma/ (Rack एप्लिकेशन सर्वर)
- https://github.com/hashicorp/vagrant (वर्चुअल मशीन्स के माध्यम से डेवलपर एनवायरनमेंट्स)
- https://github.com/sparklemotion/nokogiri (HTML / XML पार्सिंग)
- https://github.com/opal/opal (रूबी के साथ जावास्क्रिप्ट लिखें)
- https://github.com/Homebrew/brew (macOS पैकेज मैनेजर)
- https://github.com/fluent/fluentd (लॉगिंग एकीकरण टूल)
रूबी से बने हजारों प्रोजेक्ट्स हैं, लेकिन ये आपको इस प्रोग्रामिंग भाषा के साथ आप क्या कर सकते हैं इसका अंदाजा लगाने में मदद करेंगे।
सारांश में
यदि आप पाई संख्या (3.14159...) के अंकों को जितनी जल्दी हो सके क्रंच करना चाहते हैं और अपने हार्डवेयर से अधिकतम संभव प्रदर्शन प्राप्त करना चाहते हैं, तो आप रूबी का उपयोग नहीं करेंगे।
लेकिन आप उस कार्य के लिए किसी अन्य इंटरप्रेटेड भाषा का उपयोग भी नहीं करेंगे।
उदाहरण के लिए PHP या Python की तरह।
क्योंकि वे कई समान सीमाओं को साझा करते हैं।
अपने प्रदर्शन को अधिकतम करने के लिए आपको ASM (असेंबली भाषा) तक सभी तरह से नीचे जाना पड़ सकता है, जो आपके कंप्यूटर से 1s और 0s में बात करने के जितना करीब आप पहुंच सकते हैं।
बात यह है...
हर चीज के लिए एक ट्रेडऑफ है।
यदि आप उपयोग में आसानी और प्रोग्रामर मित्रता चाहते हैं, तो आपको कुछ प्रदर्शन के साथ भुगतान करना होगा।
इससे बचने का कोई रास्ता नहीं है।
इसे ध्यान में रखते हुए, यदि आप एक पूरी वेबसाइट बनाना चाहते हैं, किसी भी प्रकार का सहायक टूल जैसे बैकअप ऑटोमेशन, रिपोर्ट जनरेटर, क्रॉलर, सभी प्रकार के कैलकुलेटर, API क्लाइंट्स, आदि... या बस प्रोग्रामिंग दुनिया में शुरुआत करना चाहते हैं और बहुत मज़ा करना चाहते हैं।
तब रूबी आपके लिए एकदम सही है!
यह सक्रिय विकास में है, सीखना आसान है और यदि आप अटक जाते हैं तो आप हमेशा मदद पा सकते हैं।
तो क्यों न इसे आज़माया जाए?
मैं रूबी के साथ आपके द्वारा बनाए गए अद्भुत प्रोजेक्ट्स को देखने के लिए उत्सुक हूं!