यादृच्छिक त्रुटियों के लिए लोकप्रिय प्रोग्रामिंग भाषाओं के संबंध का अध्ययन

Diomidis Spinellis के नेतृत्व में ग्रीक वैज्ञानिकों के एक समूह ने प्रोग्राम टेक्स्ट टाइप करते समय त्रुटियों और टाइपोस के लिए दस लोकप्रिय प्रोग्रामिंग भाषाओं की संवेदनशीलता का एक दिलचस्प अध्ययन किया। ऐसी त्रुटियों से क्षति कभी-कभी कई लाखों हो सकती है, और विश्वसनीय कार्यक्रमों के विकास के लिए भाषा का जल्द से जल्द पता लगाने की क्षमता बहुत महत्वपूर्ण है। परीक्षण के लिए, रोसेटा कोड परियोजना से कई उदाहरणों का उपयोग किया गया था, एक विकी जिसने विभिन्न भाषाओं में कई कार्यों और एल्गोरिदम के कार्यान्वयन को एकत्र किया। भाषाओं की लोकप्रियता, साथ ही साथ कुछ व्यावहारिक विचारों (रोसेट्टा कोड पर एक मुफ्त संकलक और उदाहरण की उपलब्धता) के आधार पर, निम्नलिखित भाषाओं और संकलक का चयन किया गया:
भाषासंकलक / पर्यावरण
सीजीसी 4.4.5
सी ++जी ++ 4.4.5
C #मोनो 2.6.7, सीएलआई v2.0
हास्केलghc 6.12.1
जावाOpenJDK 1.6.0_18
जावास्क्रिप्टस्पिडरमोंकी 1.8.0
पीएचपीPHP 5.3.3-7
पर्लपर्ल 5.10.1
अजगरअजगर 2.6.6
गहरे लाल रंग कारूबी 1.8.7
पर्ल स्क्रिप्ट ने परीक्षण कार्यों के स्रोत कोड में त्रुटियों की शुरुआत की, जो कार्यक्रमों के एक सेट में प्राकृतिक त्रुटियों की नकल करते हैं - गलती से कुछ वर्ण, कीवर्ड और पहचानकर्ता को दूसरों के साथ बदलना, एक से बढ़ कर संख्यात्मक शाब्दिक घटाना। कुल 136 परीक्षण कार्य कार्यान्वयन का परीक्षण किया गया, जिसके आधार पर 280,000 प्रोग्राम जिनमें त्रुटियां उत्पन्न हुईं। उनमें से 32% ने त्रुटियों और चेतावनियों के बिना संकलन या सिंटैक्स की जाँच की। 23% सफलतापूर्वक पूरा हुआ, जबकि 6.5% ने सही परिणाम दिया, और 16% - गलत।

इस प्रकार, हम कह सकते हैं कि प्रोग्राम कोड में प्रत्येक छठी संवेदनहीन गलती या टाइपो का परीक्षण और कोड निरीक्षण द्वारा उचित कवरेज के साथ ही पता लगाया जा सकता है - संकलक और रनटाइम इसे पकड़ने में सक्षम नहीं होगा। स्वाभाविक रूप से, विभिन्न भाषाओं ने खुद को अलग-अलग तरीकों से दिखाया।

स्थिर और / या मजबूत टाइपिंग वाली भाषाएँ, जो काफी अपेक्षित हैं, सबसे अच्छी साबित हुईं - C #, Java, C और C ++ ने बहुत समान परिणाम दिखाए - लगभग 10% संकलक द्वारा देखे नहीं गए, C ++ का सबसे अच्छा परिणाम (8%) था। हास्केल ने थोड़ा खराब प्रदर्शन किया - लगभग 15%। गतिशील भाषाओं में बहुत अधिक भिन्नता है। PHP पूर्ण विरोधी नेता बन गया - 36% मामलों में, दुभाषिया ने आपत्ति के बिना एक गलत कार्यक्रम शुरू किया। पर्ल 22% के साथ ध्यान देने योग्य मार्जिन के साथ इसका अनुसरण करता है, जबकि रूबी (16%) और पायथन (15%) सबसे कठोर व्यवहार करते हैं।

स्रोत

Source: https://habr.com/ru/post/In161967/


All Articles