सॉफ्टवेयर बग: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 12: Line 12:


== इतिहास ==
== इतिहास ==
{{main|Bug (engineering)}}
{{main|बग (इंजीनियरिंग)}}
मध्य अंग्रेजी शब्द wikt:bugge#Noun शब्दों के लिए आधार है wikt:bugbear#Noun और wikt:bug-a-boo#Noun एक राक्षस के लिए प्रयुक्त शब्दों के रूप में।<ref>{{cite web |url= http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |title= मशीन में कीट: 'बग' की उत्पत्ति को डीबग करना|author= Computerworld staff |date= September 3, 2011 |work= Computerworld |url-status= live |archive-url= https://web.archive.org/web/20150825040938/http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |archive-date= August 25, 2015 |df= mdy-all }}</ref>
मध्य अंग्रेजी शब्द wikt:bugge#Noun शब्दों के लिए आधार है wikt:bugbear#Noun और wikt:bug-a-boo#Noun एक राक्षस के लिए प्रयुक्त शब्दों के रूप में।<ref>{{cite web |url= http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |title= मशीन में कीट: 'बग' की उत्पत्ति को डीबग करना|author= Computerworld staff |date= September 3, 2011 |work= Computerworld |url-status= live |archive-url= https://web.archive.org/web/20150825040938/http://www.computerworld.com/article/2515435/app-development/moth-in-the-machine--debugging-the-origins-of--bug-.html |archive-date= August 25, 2015 |df= mdy-all }}</ref>
दोषों का वर्णन करने के लिए बग शब्द 1870 के दशक से इंजीनियरिंग शब्दजाल का एक हिस्सा रहा है<ref>{{Cite OED|bug|id=24352}} 5a</ref> और इलेक्ट्रॉनिक्स और कंप्यूटरों की भविष्यवाणी करता है; यह मूल रूप से यांत्रिक खराबी का वर्णन करने के लिए हार्डवेयर इंजीनियरिंग में उपयोग किया गया हो सकता है। उदाहरण के लिए, [[थॉमस एडीसन]] ने 1878 में एक सहयोगी को लिखे पत्र में लिखा था:<ref>{{cite web|url=https://spectrum.ieee.org/the-institute/ieee-history/did-you-know-edison-coined-the-term-bug|title=क्या तुम्हें पता था? एडिसन ने "बग" शब्द गढ़ा|date=August 1, 2013|access-date=July 19, 2019}}</ref>
दोषों का वर्णन करने के लिए बग शब्द 1870 के दशक से इंजीनियरिंग शब्दजाल का एक हिस्सा रहा है<ref>{{Cite OED|bug|id=24352}} 5a</ref> और इलेक्ट्रॉनिक्स और कंप्यूटरों की भविष्यवाणी करता है; यह मूल रूप से यांत्रिक खराबी का वर्णन करने के लिए हार्डवेयर इंजीनियरिंग में उपयोग किया गया हो सकता है। उदाहरण के लिए, [[थॉमस एडीसन]] ने 1878 में एक सहयोगी को लिखे पत्र में लिखा था:<ref>{{cite web|url=https://spectrum.ieee.org/the-institute/ieee-history/did-you-know-edison-coined-the-term-bug|title=क्या तुम्हें पता था? एडिसन ने "बग" शब्द गढ़ा|date=August 1, 2013|access-date=July 19, 2019}}</ref>


{{Blockquote|... difficulties arise—this thing gives out and [it is] then that "Bugs"—as such little faults and difficulties are called—show themselves<ref name="Hughes1989">Edison to Puskas, 13 November 1878, Edison papers, Edison National Laboratory, U.S. National Park Service, West Orange, N.J., cited in  {{cite book |first= Thomas Parke |last=Hughes |title= American Genesis: A Century of Invention and Technological Enthusiasm, 1870-1970 |url= {{google books |plainurl=y |id=0r-ml88EynYC |page=75}} |year=1989 |publisher= Penguin Books |isbn= 978-0-14-009741-2 |page=75}}</ref>}}
{{Blockquote|... कठिनाइयाँ उत्पन्न होती हैं - यह बात सामने आती है और [यह है] तब "कीड़े" - जैसे कि छोटी-छोटी गलतियाँ और कठिनाइयाँ कहलाती हैं - स्वयं को प्रकट करते हैं , एडिसन नेशनल लेबोरेटरी, यू.एस. नेशनल पार्क सर्विस, वेस्ट ऑरेंज, एन.जे., {{साइट बुक |फर्स्ट= थॉमस पार्के |लास्ट=ह्यूजेस |टाइटल= अमेरिकन जेनेसिस: ए सेंचुरी ऑफ इन्वेंशन एंड टेक्नोलॉजिकल एंथुसियाज्म, 1870-1970 |url= में उद्धृत {{google Books |plainurl=y |id=0r-ml88EynYC |page=75}} |year=1989 |publisher= Penguin Books |isbn= 978-0-14-009741-2 |page=75}}</ref >}}
[[बाफल बॉल]], पहला मैकेनिकल [[पिनबॉल]] गेम, 1931 में कीड़ों से मुक्त होने के रूप में विज्ञापित किया गया था।<ref name="Baffle Ball">{{cite web |url= http://www.ipdb.org/machine.cgi?gid=129 |title= बाफल बॉल|publisher= Internet Pinball Database |quote=(संदर्भ प्रविष्टि में विज्ञापन की छवि देखें)}}</ref> [[द्वितीय विश्व युद्ध]] के दौरान सैन्य गियर के साथ समस्याओं को बग (या ग्लिट्स) कहा जाता था।<ref name="life1942062925">{{cite magazine |url= https://books.google.com/books?id=KlAEAAAAMBAJ&q=life%20magazine%20june%2029%201942&pg=PA25 |title= आधुनिक विमान वाहक 20 वर्षों के स्मार्ट प्रयोग का परिणाम हैं|magazine= Life |date= June 29, 1942 |access-date= November 17, 2011 |page= 25 |url-status= live |archive-url= https://web.archive.org/web/20130604220016/http://books.google.com/books?id=KlAEAAAAMBAJ&lpg=PA1&dq=life%20magazine%20june%2029%201942&pg=PA25#v=onepage&q&f=true |archive-date= June 4, 2013 |df= mdy-all }}</ref> 1942 में प्रकाशित एक पुस्तक में, [[लुईस डिकिंसन रिच]] ने एक संचालित बर्फ काटने वाली मशीन के बारे में बात करते हुए कहा, बर्फ काटने को तब तक के लिए निलंबित कर दिया गया था जब तक कि निर्माता को अपने प्रिय से कीड़े निकालने के लिए नहीं लाया जा सकता था।<ref name="oclc_405243">{{Citation |last= Dickinson Rich |first= Louise |year= 1942 |title= We Took to the Woods |page= 93 |publisher= JB Lippincott Co |url= https://books.google.com/books?id=PT0zAQAAIAAJ |lccn= 42024308 |oclc= 405243 |postscript= . |url-status= live |archive-url= https://web.archive.org/web/20170316164959/https://books.google.com/books?id=PT0zAQAAIAAJ |archive-date= March 16, 2017 |df= mdy-all }}</रेफरी>
[[बाफल बॉल]], पहला मैकेनिकल [[पिनबॉल]] गेम, 1931 में कीड़ों से मुक्त होने के रूप में विज्ञापित किया गया था।<ref name="Baffle Ball">{{cite web |url= http://www.ipdb.org/machine.cgi?gid=129 |title= बाफल बॉल|publisher= Internet Pinball Database |quote=(संदर्भ प्रविष्टि में विज्ञापन की छवि देखें)}}</ref> [[द्वितीय विश्व युद्ध]] के दौरान सैन्य गियर के साथ समस्याओं को बग (या ग्लिट्स) कहा जाता था।<ref name="life1942062925">{{cite magazine |url= https://books.google.com/books?id=KlAEAAAAMBAJ&q=life%20magazine%20june%2029%201942&pg=PA25 |title= आधुनिक विमान वाहक 20 वर्षों के स्मार्ट प्रयोग का परिणाम हैं|magazine= Life |date= June 29, 1942 |access-date= November 17, 2011 |page= 25 |url-status= live |archive-url= https://web.archive.org/web/20130604220016/http://books.google.com/books?id=KlAEAAAAMBAJ&lpg=PA1&dq=life%20magazine%20june%2029%201942&pg=PA25#v=onepage&q&f=true |archive-date= June 4, 2013 |df= mdy-all }}</ref> 1942 में प्रकाशित एक पुस्तक में, [[लुईस डिकिंसन रिच]] ने एक संचालित बर्फ काटने वाली मशीन के बारे में बात करते हुए कहा, बर्फ काटने को तब तक के लिए निलंबित कर दिया गया था जब तक कि निर्माता को अपने प्रिय से कीड़े निकालने के लिए नहीं लाया जा सकता था।<ref name="oclc_405243">{{Citation |last= Dickinson Rich |first= Louise |year= 1942 |title= We Took to the Woods |page= 93 |publisher= JB Lippincott Co |url= https://books.google.com/books?id=PT0zAQAAIAAJ |lccn= 42024308 |oclc= 405243 |postscript= . |url-status= live |archive-url= https://web.archive.org/web/20170316164959/https://books.google.com/books?id=PT0zAQAAIAAJ |archive-date= March 16, 2017 |df= mdy-all }}</रेफरी>


Line 23: Line 23:
[[File:First Computer Bug, 1945.jpg|thumb|[[हार्वर्ड मार्क II]] इलेक्ट्रोमैकेनिकल कंप्यूटर के लॉग का एक पृष्ठ, जिसमें एक मृत कीट है जिसे डिवाइस से हटा दिया गया था।]]बग शब्द का उपयोग कंप्यूटर अग्रणी [[ग्रेस हूपर]] द्वारा एक खाते में किया गया था, जिन्होंने एक प्रारंभिक इलेक्ट्रोमैकेनिकल कंप्यूटर में खराबी के कारण को प्रचारित किया था।<ref>{{citation|title=FCAT NRT Test |publisher=Harcourt |date=March 18, 2008 |title-link=Florida Comprehensive Assessment Test }}</ref> कहानी का एक विशिष्ट संस्करण है:
[[File:First Computer Bug, 1945.jpg|thumb|[[हार्वर्ड मार्क II]] इलेक्ट्रोमैकेनिकल कंप्यूटर के लॉग का एक पृष्ठ, जिसमें एक मृत कीट है जिसे डिवाइस से हटा दिया गया था।]]बग शब्द का उपयोग कंप्यूटर अग्रणी [[ग्रेस हूपर]] द्वारा एक खाते में किया गया था, जिन्होंने एक प्रारंभिक इलेक्ट्रोमैकेनिकल कंप्यूटर में खराबी के कारण को प्रचारित किया था।<ref>{{citation|title=FCAT NRT Test |publisher=Harcourt |date=March 18, 2008 |title-link=Florida Comprehensive Assessment Test }}</ref> कहानी का एक विशिष्ट संस्करण है:


{{Blockquote|In 1946, when Hopper was released from active duty, she joined the Harvard Faculty at the Computation Laboratory where she continued her work on the [[Harvard Mark II|Mark II]] and [[Harvard Mark III|Mark III]]. Operators traced an error in the Mark II to a [[moth]] trapped in a relay, coining the term ''bug''. This bug was carefully removed and taped to the log book. Stemming from the first bug, today we call errors or glitches in a program a ''bug''.<ref>{{cite web |url=http://ei.cs.vt.edu/~history/Hopper.Danis.html |title=Danis, Sharron Ann: "Rear Admiral Grace Murray Hopper" |date=February 16, 1997 |publisher=ei.cs.vt.edu |access-date=January 31, 2010}}</ref>}}
{{Blockquote|1=1946 में, जब हूपर को सक्रिय कर्तव्य से मुक्त किया गया, तो वह संगणना प्रयोगशाला में हार्वर्ड फैकल्टी में शामिल हो गई, जहाँ उसने [[हार्वर्ड मार्क II|मार्क II]] और [[हार्वर्ड मार्क III|मार्क III]] पर अपना काम जारी रखा। ऑपरेटरों ने मार्क II में एक त्रुटि का पता लगाया [[कीट]] एक रिले में फंस गया, जिसने ''बग''<nowiki> शब्द गढ़ा। इस बग को सावधानीपूर्वक हटा दिया गया और लॉग बुक में टेप कर दिया गया। पहले बग से उत्पन्न, आज हम किसी प्रोग्राम में त्रुटियों या गड़बड़ियों को 'बग' कहते हैं। .html |शीर्षक=डैनिस, शैरन ऐन: "रियर एडमिरल ग्रेस मरे हूपर" |दिनांक=16 फरवरी, 1997 |प्रकाशक=ei.cs.vt.edu |पहुंच-तारीख=31 जनवरी, 2010}}</nowiki></ref>}}
जब बग पाया गया तो हूपर सम्मलित नहीं था, लेकिन यह उसकी पसंदीदा कहानियों में से एक बन गई।<ref name=huggins>{{cite web |author=James S. Huggins |url=http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |archive-url=https://web.archive.org/web/20000816023000/http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |url-status=dead |archive-date=August 16, 2000 |title=पहला कंप्यूटर बग|publisher=Jamesshuggins.com |access-date=September 24, 2012  }}</ref> लॉग बुक में तारीख 9 सितंबर, 1947 थी।<ref>"[http://catb.org/jargon/html/B/bug.html Bug] {{webarchive|url=https://web.archive.org/web/20170323213836/http://www.catb.org/jargon/html/B/bug.html |date=March 23, 2017 }}", ''The Jargon File'', ver. 4.4.7. Retrieved June 3, 2010.</ref><ref name="si-bug">"[http://americanhistory.si.edu/collections/search/object/nmah_334663 Log Book With Computer Bug] {{webarchive|url=https://web.archive.org/web/20170323220950/http://americanhistory.si.edu/collections/search/object/nmah_334663 |date=March 23, 2017 }}", National Museum of American History, Smithsonian Institution.</ref><ref>"[https://web.archive.org/web/20000119173039/http://history.navy.mil/photos/images/h96000/h96566kc.htm The First "Computer Bug]", Naval Historical Center. But note the [[Harvard Mark II]] computer was not complete until the summer of 1947.</ref> जिन ऑपरेटरों ने इसे पाया, उनमें विलियम बिल बर्क, बाद में [[नेवल सरफेस वारफेयर सेंटर डहलग्रेन डिवीजन]], डहलग्रेन, वर्जीनिया, सम्मलित थे।<ref>IEEE Annals of the History of Computing, Vol 22 Issue 1, 2000</ref> इंजीनियरिंग की शब्दावली से परिचित थे और मनोरंजक तरीके से कीट को इस संकेतन के साथ रखा कि बग का पहला वास्तविक स्थिति पाया जा रही है। संलग्न कीट के साथ पूर्ण यह लॉग बुक, अमेरिकी इतिहास के स्मिथसोनियन राष्ट्रीय संग्रहालय के संग्रह का हिस्सा है।<ref name="si-bug" />
जब बग पाया गया तो हूपर सम्मलित नहीं था, लेकिन यह उसकी पसंदीदा कहानियों में से एक बन गई।<ref name=huggins>{{cite web |author=James S. Huggins |url=http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |archive-url=https://web.archive.org/web/20000816023000/http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm |url-status=dead |archive-date=August 16, 2000 |title=पहला कंप्यूटर बग|publisher=Jamesshuggins.com |access-date=September 24, 2012  }}</ref> लॉग बुक में तारीख 9 सितंबर, 1947 थी।<ref>"[http://catb.org/jargon/html/B/bug.html Bug] {{webarchive|url=https://web.archive.org/web/20170323213836/http://www.catb.org/jargon/html/B/bug.html |date=March 23, 2017 }}", ''The Jargon File'', ver. 4.4.7. Retrieved June 3, 2010.</ref><ref name="si-bug">"[http://americanhistory.si.edu/collections/search/object/nmah_334663 Log Book With Computer Bug] {{webarchive|url=https://web.archive.org/web/20170323220950/http://americanhistory.si.edu/collections/search/object/nmah_334663 |date=March 23, 2017 }}", National Museum of American History, Smithsonian Institution.</ref><ref>"[https://web.archive.org/web/20000119173039/http://history.navy.mil/photos/images/h96000/h96566kc.htm The First "Computer Bug]", Naval Historical Center. But note the [[Harvard Mark II]] computer was not complete until the summer of 1947.</ref> जिन ऑपरेटरों ने इसे पाया, उनमें विलियम बिल बर्क, बाद में [[नेवल सरफेस वारफेयर सेंटर डहलग्रेन डिवीजन]], डहलग्रेन, वर्जीनिया, सम्मलित थे।<ref>IEEE Annals of the History of Computing, Vol 22 Issue 1, 2000</ref> इंजीनियरिंग की शब्दावली से परिचित थे और मनोरंजक तरीके से कीट को इस संकेतन के साथ रखा कि बग का पहला वास्तविक स्थिति पाया जा रही है। संलग्न कीट के साथ पूर्ण यह लॉग बुक, अमेरिकी इतिहास के स्मिथसोनियन राष्ट्रीय संग्रहालय के संग्रह का हिस्सा है।<ref name="si-bug" />


Line 29: Line 29:
यह अवधारणा कि सॉफ्टवेयर में त्रुटियां हो सकती हैं, [[विश्लेषणात्मक इंजन]] पर एडा बायरन के नोट्स से मिलती हैं। एडा लवलेस के 1843 नोट्स एनालिटिकल इंजन पर, जिसमें वह [[चार्ल्स बैबेज]] के एनालिटिकल इंजन के गलत होने के लिए प्रोग्राम कार्ड की संभावना की बात करती हैं:
यह अवधारणा कि सॉफ्टवेयर में त्रुटियां हो सकती हैं, [[विश्लेषणात्मक इंजन]] पर एडा बायरन के नोट्स से मिलती हैं। एडा लवलेस के 1843 नोट्स एनालिटिकल इंजन पर, जिसमें वह [[चार्ल्स बैबेज]] के एनालिटिकल इंजन के गलत होने के लिए प्रोग्राम कार्ड की संभावना की बात करती हैं:


{{Blockquote|...&nbsp;an analysing process must equally have been performed in order to furnish the Analytical Engine with the necessary ''operative'' data; and that herein may also lie a possible source of error. Granted that the actual mechanism is unerring in its processes, the ''cards'' may give it wrong orders.}}
{{Blockquote|विश्लेषणात्मक इंजन को आवश्यक ''ऑपरेटिव'' डेटा प्रस्तुत करने के लिए एक विश्लेषण प्रक्रिया समान रूप से निष्पादित की जानी चाहिए; और इसमें त्रुटि का संभावित स्रोत भी हो सकता है। यह माना जाता है कि वास्तविक तंत्र अपनी प्रक्रियाओं में त्रुटिहीन है, ''कार्ड'' इसे गलत आदेश दे सकते हैं।}}




Line 36: Line 36:


सरकारी शोधकर्ता, कंपनियाँ और साइबर सुरक्षा विशेषज्ञ वे लोग हैं जो साधारणतयः सॉफ़्टवेयर की खामियों का पता लगाते हैं। रिपोर्ट में कंप्यूटर अपराध और कॉपीराइट कानूनों में सुधार की मांग की गई है।<ref name=":0" />
सरकारी शोधकर्ता, कंपनियाँ और साइबर सुरक्षा विशेषज्ञ वे लोग हैं जो साधारणतयः सॉफ़्टवेयर की खामियों का पता लगाते हैं। रिपोर्ट में कंप्यूटर अपराध और कॉपीराइट कानूनों में सुधार की मांग की गई है।<ref name=":0" />
{{Blockquote|The Computer Fraud and Abuse Act, the Digital Millennium Copyright Act and the Electronic Communications Privacy Act criminalize and create civil penalties for actions that security researchers routinely engage in while conducting legitimate security research, the report said.<ref name=":0" />}}
{{Blockquote|कंप्यूटर फ्रॉड एंड एब्यूज एक्ट, डिजिटल मिलेनियम कॉपीराइट एक्ट और इलेक्ट्रॉनिक कम्युनिकेशंस प्राइवेसी एक्ट उन कार्रवाइयों के लिए अपराधीकरण और नागरिक दंड बनाते हैं, जो सुरक्षा शोधकर्ता नियमित रूप से वैध सुरक्षा अनुसंधान करते समय संलग्न करते हैं, रिपोर्ट में कहा गया है।<ref name=":0" / >}}




Line 86: Line 86:
[[File:Classpath bugs.png|thumb|350px|सामान्य बग इतिहास ([[जीएनयू क्लासपाथ]] प्रोजेक्ट डेटा)। उपयोगकर्ता द्वारा सबमिट किया गया एक नया बग अपुष्ट है। एक बार जब इसे एक डेवलपर द्वारा पुन: प्रस्तुत किया जाता है, तो यह एक पुष्टि की गई बग है। पुष्टि किए गए बग बाद में तय किए गए हैं। अन्य श्रेणियों से संबंधित बग (पुनरुत्पादन योग्य नहीं, तय नहीं किया जाएगा, आदि) साधारणतयः अल्पमत में होते हैं]]
[[File:Classpath bugs.png|thumb|350px|सामान्य बग इतिहास ([[जीएनयू क्लासपाथ]] प्रोजेक्ट डेटा)। उपयोगकर्ता द्वारा सबमिट किया गया एक नया बग अपुष्ट है। एक बार जब इसे एक डेवलपर द्वारा पुन: प्रस्तुत किया जाता है, तो यह एक पुष्टि की गई बग है। पुष्टि किए गए बग बाद में तय किए गए हैं। अन्य श्रेणियों से संबंधित बग (पुनरुत्पादन योग्य नहीं, तय नहीं किया जाएगा, आदि) साधारणतयः अल्पमत में होते हैं]]


{{Main|Debugging}}
{{Main|डिबगिंग}}
बग्स को ढूँढना और ठीक करना, या डिबगिंग, [[कंप्यूटर प्रोग्रामिंग]] का एक प्रमुख हिस्सा है। एक शुरुआती कंप्यूटिंग अग्रणी [[मौरिस विल्क्स]] ने 1940 के दशक के अंत में अपने अहसास का वर्णन किया कि उनके जीवन का अधिकांश समय उनके अपने कार्यक्रमों में गलतियाँ खोजने में व्यतीत होगा।<ref>[[q:Maurice Wilkes|Maurice Wilkes Quotes]]</ref>
बग्स को ढूँढना और ठीक करना, या डिबगिंग, [[कंप्यूटर प्रोग्रामिंग]] का एक प्रमुख हिस्सा है। एक शुरुआती कंप्यूटिंग अग्रणी [[मौरिस विल्क्स]] ने 1940 के दशक के अंत में अपने अहसास का वर्णन किया कि उनके जीवन का अधिकांश समय उनके अपने कार्यक्रमों में गलतियाँ खोजने में व्यतीत होगा।<ref>[[q:Maurice Wilkes|Maurice Wilkes Quotes]]</ref>
साधारणतयः, डिबगिंग का सबसे कठिन हिस्सा बग ढूंढ रहा है। एक बार यह मिल जाने के बाद, इसे ठीक करना साधारणतयः अपेक्षाकृत आसान होता है। [[डिबगर]]्स के रूप में जाने जाने वाले प्रोग्राम प्रोग्रामर को कोड लाइन को लाइन से निष्पादित करके, चर मूल्यों को देखते हुए, और प्रोग्राम के व्यवहार को देखने के लिए अन्य सुविधाओं द्वारा बग का पता लगाने में मदद करते हैं। डिबगर के बिना, कोड जोड़ा जा सकता है जिससे कि प्रोग्राम निष्पादन का पता लगाने या मान दिखाने के लिए कंसोल या विंडो या लॉग फ़ाइल में संदेश या मान लिखे जा सकें।
साधारणतयः, डिबगिंग का सबसे कठिन हिस्सा बग ढूंढ रहा है। एक बार यह मिल जाने के बाद, इसे ठीक करना साधारणतयः अपेक्षाकृत आसान होता है। [[डिबगर]]्स के रूप में जाने जाने वाले प्रोग्राम प्रोग्रामर को कोड लाइन को लाइन से निष्पादित करके, चर मूल्यों को देखते हुए, और प्रोग्राम के व्यवहार को देखने के लिए अन्य सुविधाओं द्वारा बग का पता लगाने में मदद करते हैं। डिबगर के बिना, कोड जोड़ा जा सकता है जिससे कि प्रोग्राम निष्पादन का पता लगाने या मान दिखाने के लिए कंसोल या विंडो या लॉग फ़ाइल में संदेश या मान लिखे जा सकें।
Line 147: Line 147:


=== नियंत्रण प्रवाह ===
=== नियंत्रण प्रवाह ===
{{See also|Logic error}}
{{See also|तर्क त्रुटि}}
नियंत्रण प्रवाह बग वे हैं जो वैध तर्क के साथ प्रक्रियाओं में पाए जाते हैं, लेकिन इससे अनपेक्षित परिणाम होते हैं, जैसे [[अनंत लूप]] और अनंत [[रिकर्सन (कंप्यूटर विज्ञान)]], [[सशर्त बयान]]ों के लिए गलत तुलना जैसे गलत [[असमानता]] का उपयोग करना, और [[ऑफ-बाय-वन त्रुटियां]] (लूप करते समय एक बहुत अधिक या एक बहुत कम पुनरावृत्तियों को गिनना)।
नियंत्रण प्रवाह बग वे हैं जो वैध तर्क के साथ प्रक्रियाओं में पाए जाते हैं, लेकिन इससे अनपेक्षित परिणाम होते हैं, जैसे [[अनंत लूप]] और अनंत [[रिकर्सन (कंप्यूटर विज्ञान)]], [[सशर्त बयान]]ों के लिए गलत तुलना जैसे गलत [[असमानता]] का उपयोग करना, और [[ऑफ-बाय-वन त्रुटियां]] (लूप करते समय एक बहुत अधिक या एक बहुत कम पुनरावृत्तियों को गिनना)।


Line 177: Line 177:


=== सिंटेक्स ===
=== सिंटेक्स ===
{{See also|Syntax error}}
{{See also|वक्य रचना त्रुटि}}
* गलत लेक्सिकल_विश्लेषण # टोकन का उपयोग, जैसे कि ==# समानता के अतिरिक्त असाइनमेंट करना। उदाहरण के लिए, कुछ भाषाओं में <nowiki>x=5</nowiki> x का मान 5 पर सेट करेगा जबकि <nowiki>x==5</nowiki> जाँच करेगा कि x वर्तमान में 5 है या कोई अन्य संख्या। व्याख्या की गई भाषाएँ ऐसे कोड को विफल होने देती हैं। परीक्षण शुरू होने से पहले संकलित भाषाएँ ऐसी त्रुटियों को पकड़ सकती हैं।
* गलत लेक्सिकल_विश्लेषण # टोकन का उपयोग, जैसे कि ==# समानता के अतिरिक्त असाइनमेंट करना। उदाहरण के लिए, कुछ भाषाओं में <nowiki>x=5</nowiki> x का मान 5 पर सेट करेगा जबकि <nowiki>x==5</nowiki> जाँच करेगा कि x वर्तमान में 5 है या कोई अन्य संख्या। व्याख्या की गई भाषाएँ ऐसे कोड को विफल होने देती हैं। परीक्षण शुरू होने से पहले संकलित भाषाएँ ऐसी त्रुटियों को पकड़ सकती हैं।


Line 199: Line 199:


== प्रसिद्ध बग ==
== प्रसिद्ध बग ==
{{Main|List of software bugs}}
{{Main|सॉफ़्टवेयर बग की सूची}}
कई सॉफ़्टवेयर बग प्रसिद्ध हो गए हैं, साधारणतयः उनकी गंभीरता के कारण: उदाहरणों में विभिन्न अंतरिक्ष और सैन्य विमान दुर्घटनाएं सम्मलित हैं। संभवतः सबसे प्रसिद्ध बग [[वर्ष 2000 की समस्या]] या Y2K बग है, जिसके कारण 19xx से 20xx तारीखों में परिवर्तन से बहुत पहले लिखे गए कई कार्यक्रम खराब हो गए थे, उदाहरण के लिए 25 दिसंबर 04 जैसी तारीख को 1904 में मानते हुए, 19100 के अतिरिक्त 19100 प्रदर्शित करना 2000, और इतने पर। 20वीं शताब्दी के अंत में एक बड़े प्रयास ने सबसे गंभीर समस्याओं का समाधान किया, और कोई बड़ा परिणाम नहीं हुआ।
कई सॉफ़्टवेयर बग प्रसिद्ध हो गए हैं, साधारणतयः उनकी गंभीरता के कारण: उदाहरणों में विभिन्न अंतरिक्ष और सैन्य विमान दुर्घटनाएं सम्मलित हैं। संभवतः सबसे प्रसिद्ध बग [[वर्ष 2000 की समस्या]] या Y2K बग है, जिसके कारण 19xx से 20xx तारीखों में परिवर्तन से बहुत पहले लिखे गए कई कार्यक्रम खराब हो गए थे, उदाहरण के लिए 25 दिसंबर 04 जैसी तारीख को 1904 में मानते हुए, 19100 के अतिरिक्त 19100 प्रदर्शित करना 2000, और इतने पर। 20वीं शताब्दी के अंत में एक बड़े प्रयास ने सबसे गंभीर समस्याओं का समाधान किया, और कोई बड़ा परिणाम नहीं हुआ।



Revision as of 23:03, 7 December 2022