आप बिल्कुल नई लाइब्रेरी या फीचर के साथ काम कर रहे हैं, और आप दस्तावेज़ीकरण को समझ नहीं सकते हैं। हो सकता है कि इसे स्थापित करना कठिन हो, इसलिए आपको RDocs के बीच तब तक उछालना होगा जब तक आप यह नहीं सीख लेते कि सब कुछ एक साथ कैसे फिट बैठता है। शायद दस्तावेज़ीकरण भी मौजूद नहीं है। या हो सकता है कि आप बहुत सारे उदाहरण देखकर सबसे अच्छा सीखें।
आपको कुछ मदद चाहिए। लेकिन आप किसी सुविधा का उपयोग करना कहाँ से सीखते हैं, यदि उसके दस्तावेज़ नहीं हैं?
मेरी पसंदीदा GitHub सुविधाओं में से एक
जब आप दस्तावेज़ीकरण से परे जाना चाहते हैं और किसी पुस्तकालय या सुविधा के वास्तविक दुनिया के उपयोग देखना चाहते हैं, तो GitHub की कोड खोज का उपयोग करें।
उदाहरण के लिए, मान लें कि मैंने सशर्त जीईटी समर्थन पर रेल गाइड पढ़ा है। मुझे लगता है कि मैं इसे समझता हूं, लेकिन मैं इसे वास्तविक रूप से उपयोग करने से पहले कुछ और उदाहरण देखना चाहता हूं।
मैं गिटहब खोज पर आशा कर सकता हूं, और "if stale?"
. की तलाश कर सकता हूं . फिर, साइडबार में, code
pick चुनें और Ruby
:
{% img img-responsive /images/posts/code-search.gif 783 484 कुछ कोड खोज रहे हैं। %}
और अब मेरे पास ढेर सारे बेहतरीन उदाहरण हैं कि कैसे stale?
इस्तेमाल किया जा सकता है।
सभी उदाहरण दिलचस्प नहीं हैं। लेकिन एक सूची में, मैंने लेखक को Post.maximum
. का उपयोग करते हुए देखा है :
class ArchivesController < ApplicationController
def index
if stale?(last_modified: (Post.maximum(:updated_at) || EPOCH).utc, public: true)
@months = Post.find_all_grouped_by_month
end
end
end
यह stale?
. का उपयोग करने का एक शानदार तरीका लगता है . और अगर मैंने यह उदाहरण नहीं देखा होता, तो शायद मैं इसे आज़माने के बारे में नहीं सोचता।
आपको जो मिलता है उसका उपयोग कैसे करना चाहिए?
जब आप ओपन-सोर्स कोड खोजते हैं, तो आपको लगभग किसी भी सुविधा के लिए सैकड़ों उदाहरण मिलते हैं। आप देखेंगे कि दस्तावेज़ीकरण कहाँ समझ में आता है, और कहाँ यह अति-सरलीकृत है। और आप वस्तुओं को वास्तविक कोड में एक साथ काम करते हुए देखेंगे। यह आपको इस बारे में अधिक सिखाएगा कि किसी भी RDoc की तुलना में कक्षाएं कैसे जुड़ी हैं।
फिर भी, नई चीजें सीखने के लिए उदाहरणों का उपयोग करें, न कि अपने स्वयं के प्रोजेक्ट में कार्गो पंथ के लिए। बिना समझे कोड का उपयोग करना खराब तरीके से डिजाइन किए गए सिस्टम का सबसे तेज़ तरीका है।
मेरे उदाहरण में, maximum
मेरी परियोजना में करना सही काम नहीं हो सकता है। मुझे इसके बारे में अधिक जानने के बिना लाइन की नकल नहीं करनी चाहिए। बिना समझे कब इसका उपयोग करना समझ में आता है। लेकिन उदाहरण आपको ऐसी चीजें सिखा सकते हैं जो आप पहले नहीं जानते थे। और वे यह तय करने का एक शानदार तरीका हैं कि आगे क्या सीखना है।
किसी भी खोज की तरह, अच्छे परिणाम प्राप्त करने के लिए कुछ अभ्यास की आवश्यकता होगी। लेकिन मुझे मिले कोड से मैंने बहुत कुछ सीखा है, और मुझे पता है कि आप भी करेंगे।