654 / 736BK38

Programming Bitcoin

अपने हाथों से हिस्से बनाकर Bitcoin को समझना

वॉलेट में आप भेजें दबाते हैं और बाकी काम ऐप करता है। Programming Bitcoin पूछती है कि भीतर वास्तव में क्या होना चाहिए। Jimmy Song छोटे प्रोग्रामिंग अभ्यासों से शुरू करके पाठक को अपना परीक्षण लेनदेन बनाने, उस पर हस्ताक्षर करने और नेटवर्क में भेजने तक ले जाते हैं।

Programming Bitcoin Jimmy Song की 2019 की तकनीकी पुस्तक है। यह Python लाइब्रेरी के ज़रिए Bitcoin समझाती है: कार्यक्रम के दोबारा इस्तेमाल किए जा सकने वाले हिस्से, जिन्हें पाठक धीरे-धीरे खुद बनाता है। यह प्रोग्रामिंग की बुनियाद जानने वालों की पाठ्यपुस्तक है, तैयार वॉलेट नहीं।

ऐप इस्तेमाल करना और उसके काम करने का तरीका समझना अलग कौशल हैं। Song पाठक को पहले से दूसरे तक ले जाना चाहते हैं: Bitcoin का केवल वर्णन करने के बजाय उसके हिस्से लिखने और आज़माने देते हैं। लक्ष्य है ज़रूरी डेटा पाना, लेनदेन बनाना और नेटवर्क तक पहुँचाना समझना। मुद्रा और समाज से जुड़े प्रश्न पुस्तक के दायरे से बाहर हैं। [3]

पुस्तक के 14 अध्याय पिछली जानकारी पर आगे का निर्माण करते हैं। शुरुआत कुंजियों और हस्ताक्षरों के लिए आवश्यक गणित से होती है। फिर सीरियलाइज़ेशन आता है, यानी डेटा को सहेजने और भेजने के लिए तय सटीक प्रारूप में बदलना; इसके बाद लेनदेन, ब्लॉक और नेटवर्क संचार। क्रम का कारण है: कठिन कार्य पहले बनाए हिस्सों का इस्तेमाल करते हैं। [3]

अध्याय 1–12 में अभ्यास हैं। पाठक Python फ़ाइलों में बदलाव करता है और तैयार परीक्षणों से देखता है कि उसका समाधान सवाल की शर्तें पूरी करता है या नहीं। यहाँ Jupyter notebook लैपटॉप नहीं, काम करने का दस्तावेज़ है जिसमें कोड चलाकर तुरंत नतीजा देखा जा सकता है। हल परिशिष्ट और रिपॉज़िटरी में हैं; उद्देश्य अपनी गलती समझना है, सिर्फ़ सही उत्तर उतारना नहीं। [3]

अंतिम प्रोग्रामिंग अभ्यास पिछला काम जोड़ता है: दूसरे नोड से जुड़ना, उपलब्ध रकम पता करना, लेनदेन बनाकर हस्ताक्षर करना और उसे प्रसारित करना। यह प्रयोगों के लिए अलग नेटवर्क testnet पर होता है। लेखक की यह शिक्षण योजना बताने का मतलब नहीं कि हमने अभ्यास खुद चलाया या आज के वातावरण में उसका काम करना सत्यापित किया है। [3]

लाइब्रेरी Python 3 इस्तेमाल करती है। Song भाषा का मध्यम स्तर सुझाते हैं, हालाँकि उनके अनुसार शुरुआती प्रोग्रामर भी कई अवधारणाएँ समझ सकता है। गणित के लिए बीजगणित की बुनियाद पर्याप्त मानी गई है; नए औज़ार क्रम से समझाए जाते हैं। अगर कभी प्रोग्रामिंग नहीं की, तो भाषा और Bitcoin प्रोटोकॉल एक साथ सीखने से बेहतर पहले Python की बुनियाद सीखना होगा। [3]

अंतिम अध्याय में Song निजी कुंजियों की सुरक्षा की कठिनाई बताते हैं। वॉलेट को समझ में आने वाला इंटरफ़ेस, बैकअप और लेनदेन इतिहास भी चाहिए। इसलिए किसी एक फ़ंक्शन का परीक्षण सफल होना पूरे कार्यक्रम की सुरक्षा सिद्ध नहीं करता। लाइब्रेरी सीखने के लिए है, पूर्ण या प्रदर्शन के लिए अनुकूलित कार्यान्वयन नहीं; उसे वास्तविक रकम के लिए अपने-आप उपयुक्त नहीं मान सकते। [3] [4]

लेखक अपना परीक्षण वॉलेट, ब्लॉक एक्सप्लोरर, ऑनलाइन दुकान या सहायक लाइब्रेरी बनाने का सुझाव देते हैं। दुकान के लिए testnet से शुरू करने और सुरक्षित क्रिप्टोग्राफ़िक लाइब्रेरी इस्तेमाल करने की सलाह है। खुले प्रोजेक्ट में योगदान भी एक रास्ता है। ये आगे पढ़ने के विचार हैं, आज की सत्यापित सेवाओं की सूची या नौकरी का वादा नहीं। [4]

O’Reilly फ़रवरी 2019 बताता है, जबकि लेखक की रिपॉज़िटरी का README मार्च 2019 लिखता है। दोनों अभिलेखों का अंतर बनाए रखा गया है। यह परिचय प्रकाशन जानकारी, पूरी प्रस्तावना और अंतिम अध्याय Advanced Topics and Next Steps पर आधारित है। यह पूरी किताब की समीक्षा या साथ दिए कोड का परीक्षण नहीं है। ऑनलाइन पाठ बदल सकता है; पुराने स्थापना निर्देश इस्तेमाल करने से पहले उन्हें मौजूदा दस्तावेज़ों से मिलाना चाहिए। [1] [2] [3] [4]

पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें Private Key, लेनदेन, Bitcoin Script, Full Node.

01क्या यह बिल्कुल नए पाठक की किताब है?

Bitcoin विकास में नए व्यक्ति के लिए हाँ, बशर्ते उसे प्रोग्रामिंग की बुनियाद आती हो। प्रस्तावना मुख्यतः Python और लगभग बीजगणित स्तर का गणित मानकर चलती है। जो बिना कोड लिखे पहले Bitcoin का इस्तेमाल समझना चाहता है, उसके लिए शुरुआती मार्गदर्शिकाएँ अधिक सीधा रास्ता हैं।

02क्या अभ्यास पूरे करके मैं लाइब्रेरी को अपने बिटकॉइन सौंप सकता हूँ?

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

DOC · 001O’Reilly — Programming Bitcoinप्रकाशक DOC · 002Programming Bitcoin — official repositoryप्राथमिक स्रोत DOC · 003Programming Bitcoin — Prefaceप्राथमिक स्रोत DOC · 004Programming Bitcoin — Advanced Topics and Next Stepsप्राथमिक स्रोत
समीक्षा की गई: स्रोत पहले · यह निवेश सलाह नहीं है