मुझे हाल ही में कोड कोड के लिए Coverity Prevent के विकल्पों के बारे में पूछा गया था जिसमें सी/सी ++ और जावा दोनों शामिल हैं। जाहिर है, जावा पक्ष पर, उपलब्ध मुफ्त टूल में Findbugs (संकलित कोड विश्लेषण) और पीएमडी (स्थिर कोड विश्लेषण) शामिल हैं। वे बहुत शक्तिशाली हैं, खासकर जब आप आईडीई के साथ एकीकरण की जांच शुरू करते हैं (जो, फिर से, मुक्त हैं)।क्या सी/सी ++ के लिए एक Findbugs और/या पीएमडी समतुल्य है?
हालांकि, बातें जब तुम सी में जाने/C++ विभिन्न compilers, आर्किटेक्चर के साथ दायरे, आदि शुरू dicey हैं
मैं जावा पक्ष के लिए उपकरणों की एक किस्म का प्रस्ताव किया है दोनों FindBugs और PMD भी शामिल है। निम्न मीट्रिक का उपयोग करते समय विचार किया क्या मैं देख रहा हूँ C/C++ पक्ष के लिए सबसे अच्छा विकल्प है:
- कीमत: मुक्त बेहतर है लेकिन बेहतर मूल्य द्वारा पीटा जा सकता है। हालांकि, मूल्य निर्धारण मॉडल जो कोड की प्रति पंक्ति चार्ज करते हैं वे भयानक हैं।
- फ़ीचर सेट: यह टूल मेरे जीवन को बेहतर कैसे बनाता है? कोड भेजने से पहले, मैं इन्हें जांचने से पहले अपनी गलतियों का पता कैसे लगाता हूं?
- उपयोगिता: क्या मैं अपने डेस्क पर टूल का उपयोग कर सकता हूं? क्या मैं रिपोर्ट और/या निष्कर्ष साझा कर सकता हूं? क्या मैं टूल को फोगबगज़ (जिसे हम अपने समूह में उपयोग करते हैं) के साथ एकीकृत कर सकते हैं? क्या मैं टूल को क्रूज़ कंट्रोल (या समतुल्य) में एकीकृत कर सकता हूं?
अंतिम उपकरण कुछ ऐसा होगा जो खोज सुविधा के साथ Findbugs और पीएमडी के संयोजन के रूप में उपयोगी और उपयोग योग्य होगा, सभी प्रति सीट शून्य डॉलर के लिए।
विकी के लिंक के लिए धन्यवाद। इस मामले में, मैं सभी उपलब्ध उपकरणों की सूची के बजाय एक विशिष्ट सुविधा सेट तैयार करने की कोशिश कर रहा हूं। यह सवाल विशेष रूप से रिफ्लेक्सिव प्रतिक्रिया को संबोधित करने का प्रयास कर रहा है जब मैं Findbugs और पीएमडी के बारे में बात करता हूं: "ओह, ऐसा कुछ भी नहीं है जो सी ++ के लिए मौजूद है।" –
उपकरण है कि मैं जुड़ा हुआ अपने सीमित C/C++ का अनुभव है, उन भाषाओं के लिए स्थिर कोड विश्लेषण के लिए अग्रणी गैर वाणिज्यिक उपकरणों से, कर रहे हैं। वहां अन्य लोग भी हो सकते हैं, लेकिन अगर मुझे उन भाषाओं में से किसी एक में स्थिर विश्लेषण करने की ज़रूरत है, तो ये वे उपकरण हैं जिन्हें मैं पकड़ूंगा। –
@ थॉमस ओवेन्स, पर्याप्त मेला - सिफारिशों के लिए धन्यवाद। –