चेकस्टाइल बनाम पीएमडी


85

हम अपने जावा उत्पाद के लिए निर्माण प्रणाली में स्थैतिक विश्लेषण उपकरण पेश कर रहे हैं। हम Maven2 का उपयोग कर रहे हैं ताकि चेकस्टाइल और पीएमडी एकीकरण मुफ्त में आए। हालांकि ऐसा लगता है कि बुनियादी शैली के नियमों को लागू करने के संदर्भ में इन दोनों उपकरणों के बीच कार्यक्षमता में एक बड़ा ओवरलैप है।

क्या इन दोनों के उपयोग से कोई लाभ है? मैं 2 उपकरणों को बनाए रखना नहीं चाहता, अगर कोई काम करेगा। यदि हम एक का चयन करते हैं, तो हमें किसका उपयोग करना चाहिए और क्यों?

हम फाइंडबग्स का उपयोग करने की योजना भी बना रहे हैं। क्या अन्य स्थिर विश्लेषण उपकरण हैं जिन्हें हमें देखना चाहिए?

अपडेट: सर्वसम्मति से प्रतीत होता है कि चेकडायटल पर पीएमडी को प्राथमिकता दी जाती है। मुझे दोनों का उपयोग करने का कोई ठोस कारण नहीं दिखता है, और मैं नियम फाइलों के 2 सेट को बनाए नहीं रखना चाहता हूं, इसलिए हम शायद विशेष रूप से पीएमडी के लिए लक्ष्य करेंगे। हम FindBugs में भी लाएंगे, और शायद, अंततः, वास्तु नियमों को लागू करने के लिए मैकर।

जवाबों:


69

आपको फाइंडबग्स का इस्तेमाल जरूर करना चाहिए । मेरे अनुभव में, झूठी-सकारात्मक दर बहुत कम है, और यहां तक ​​कि सबसे कम-महत्वपूर्ण चेतावनियां भी हैं जो कुछ हद तक संबोधित करने योग्य हैं।

चेकस्टाइल बनाम पीएमडी के रूप में, मैं चेकस्टाइल का उपयोग नहीं करूंगा क्योंकि यह बहुत ही स्टाइल से संबंधित है। मेरे अनुभव में, चेकस्टाइल उन चीजों की एक टन पर रिपोर्ट करेगा जो पूरी तरह से अप्रासंगिक हैं। दूसरी ओर पीएमडी भी संदिग्ध कोडिंग प्रथाओं को इंगित करने में सक्षम है और इसका आउटपुट आम तौर पर अधिक प्रासंगिक और उपयोगी है।


49
FindBugs की अपनी सिफारिश जोड़ने के लिए +1। हालाँकि, मैं चेकस्टाइल पर आपकी राय से बहुत असहमत हूं, जब तक कि आप अपने स्वयं के आदर्श शैली के साथ एक अकेला-भेड़िया डेवलपर नहीं हैं। टीमों के लिए, नियमों के एक सामान्य उचित उपसमुच्चय पर सहमति व्यक्त करना और फिर चेकस्टाइल जैसे स्वचालित उपकरण का उपयोग करके स्वचालित रूप से उन्हें उन कोड में परिणाम लागू करना है जो सभी द्वारा पठनीय हैं।
जॉन टोबलर

1
परफेक्ट नहीं है, FindBugs अब तक का सबसे अच्छा है। पीएमडी और चेकस्टाइल आपको नीच बुरे व्यवहारों की ओर इशारा करते हैं। जब तक आप बहुत अच्छी तरह से जानते हैं कि कौन सी चेतावनी वैध है और कौन सी नहीं है, हर कीमत पर टाला जाना चाहिए।
DPM

ताज्जुब है कि मुझे पीएमडी बनाम चेकस्टाइल के साथ सटीक विपरीत अनुभव हुआ है। PMD अक्सर झूठी सकारात्मक रिपोर्ट करता है अगर यह कुछ चेकस्टाइल या फाइंडबग्स नहीं मिला। 7 साल हालांकि बहुत मायने रख सकते हैं।
xenoterracide

38

दोनों सॉफ्टवेअर उपयोगी हैं। चेकस्टाइल आपकी प्रोग्रामिंग के दौरान आपकी कोडिंग शैली यानी ब्रेसिज़, नामकरण आदि सरल चीज़ों की जाँच करके आपकी सहायता करेगी लेकिन बहुत सी बातें!

पीएमडी आपकी कक्षाओं के डिजाइन के दौरान अधिक जटिल नियमों की जांच करके या सही ढंग से क्लोन फ़ंक्शन को लागू करने जैसी अधिक विशेष समस्याओं के लिए आपकी मदद करेगा। बस, पीएमडी आपकी प्रोग्रामिंग शैली की जाँच करेगा

हालाँकि, दोनों सॉफ्टवेर एक जैसे नियमों से पीड़ित होते हैं जिन्हें कभी-कभी बुरा समझा जाता है। एक खराब कॉन्फ़िगरेशन के साथ, आप दो या दो विपरीत चीजों की जांच कर सकते हैं अर्थात "बेकार निर्माण हटाएं" और "हमेशा एक निर्माणकर्ता"।


9
बिल्कुल सही। IMHO, वे 2 उपकरण हैं जो अलग-अलग काम करने का लक्ष्य रखते हैं, इसलिए मुझे यकीन नहीं है कि अगर वे तुलनीय हैं। यदि आप एक विकास टीम के बीच एक मानक कोडिंग शैली लागू करना चाहते हैं, तो चेकस्टाइल का उपयोग करें। यदि आप डिजाइन मुद्दों या खराब कोडिंग प्रथाओं के लिए कोड का विश्लेषण करना चाहते हैं, तो पीएमडी का उपयोग करें।
aberrant80

24

यदि हम एक का चयन करते हैं, तो हमें किसका उपयोग करना चाहिए और क्यों?

ये उपकरण प्रतिस्पर्धा नहीं कर रहे हैं, लेकिन पूरक हैं और एक साथ उपयोग किए जाने चाहिए।

कन्वेंशन टाइप (चेकस्टाइल) वह गोंद है जो असंगत कोड को समझने में समय और ऊर्जा खर्च करने के बजाय लोगों को एक साथ काम करने और अपनी रचनात्मकता को मुक्त करने में सक्षम बनाता है।

चेकस्टाइल उदाहरण:

  • क्या सार्वजनिक विधियों पर जावदोक है?
  • क्या यह परियोजना सन नामकरण सम्मेलनों का अनुसरण कर रही है?
  • क्या कोड एक सुसंगत प्रारूप के साथ लिखा गया है?

जबकि पीएमडी आपको बुरे व्यवहार की याद दिलाता है:

  • बिना कुछ किए अपवाद को पकड़ना
  • मृत कोड
  • बहुत सी जटिल विधियाँ
  • इंटरफेस के बजाय कार्यान्वयन का प्रत्यक्ष उपयोग
  • समान (ऑब्जेक्ट ऑब्जेक्ट) विधि के बिना हैशकोड () विधि को लागू करना

स्रोत: http://www.sonarsource.org/what-makes-checkstyle-pmd-findbugs-and-macker-complementary/


1
मैं मानता हूं कि चेकस्टाइल, कोड प्रारूप पर अधिक ध्यान केंद्रित करता है और डेवलपर को "कोड मानक" का पालन करने के लिए मजबूर करता है, लेकिन यह बहुत सारी बुरी प्रथाओं का भी पता लगा सकता है , यहां देखिए , और चेकस्टाइल का विस्तार विकास के लिए अधिक आसान है, लेकिन मैं सहमत हूं इसकी सीमाएँ हैं और ये कभी भी PMD और FindBug को पार नहीं कर पाएंगे।
रोमन इवानोव

15

हम दोनों का उपयोग करते हैं:

  • चेकस्टाइल यह सुनिश्चित करने के लिए कि टीम में हर कोई एक समान मैनर में कोड लिखता है
  • पीएमडी समस्याग्रस्त कोड क्षेत्रों और अगले लक्ष्यीकरण लक्ष्यों को खोजने के लिए

7

यदि ग्रहण में विकसित होने के दौरान आपके प्राथमिक उपयोग की जगह है, तो इंस्टेंटिएशन से कोडप्रो सबसे अच्छा होगा। पहले यह एक कमर्शियल टूल था, लेकिन अब Google ने इंस्टेंटिएशन खरीद लिया है इसलिए अब कोडप्रो एनालिटिक्स फ्री है।

की जाँच करें http://code.google.com/javadevtools/download-codepro.html


7

यदि आपने चेकस्टाइल, पीएमडी और फाइंडबग्स नियम सूचियों की समीक्षा की है, तो आपने देखा है कि तीनों मूल्यवान उत्पादन प्रदान करते हैं और तीनों एक हद तक ओवरलैप करते हैं और अपने स्वयं के, अद्वितीय नियमों को भी तालिका में लाते हैं। यही कारण है कि सोनार जैसे उपकरण तीनों का उपयोग करते हैं।

उस ने कहा, फाइंडबग्स के सबसे विशिष्ट या आला नियम हैं (उदाहरण के लिए "अवैध अवैध रूप से अवैध रूप से पकड़ने" - आप कितनी बार उस में चलने की संभावना है?) इसलिए यह बहुत कम या कोई कॉन्फ़िगरेशन के साथ उपयोग करने योग्य है और इसकी चेतावनियों को गंभीरता से लिया जाना चाहिए। चेकस्टाइल और पीएमडी के साथ नियम अधिक सामान्य और शैली से संबंधित हैं, इसलिए उनका उपयोग केवल कस्टम कॉन्फ़िगरेशन फ़ाइलों के साथ किया जाना चाहिए ताकि टीम को अप्रासंगिक प्रतिक्रिया ("लाइन 5 पर टैब चार", "लाइन 6 पर टैब चार") के हिमस्खलन से बचाया जा सके। "लाइन 7 पर टैब चार" ... आप चित्र प्राप्त करें)। वे अपने स्वयं के उन्नत नियमों को लिखने के लिए शक्तिशाली उपकरण भी प्रदान करते हैं, उदाहरण के लिए चेकस्टाइल अवरोही नियम।

तीनों का उपयोग करते समय (विशेष रूप से सोनार जैसे उपकरण के साथ), सभी को अलग-अलग कॉन्फ़िगर किया जाना चाहिए (सभी नियमों को कवर करने के लिए कम से कम कुछ दिन लगते हैं) दोहराव को रोकने के लिए ध्यान देते हुए (सभी तीन उपकरण उस हैशकोड () का पता लगा रहे हैं) ओवरराइड और बराबर () नहीं, उदाहरण के लिए)।

सारांश में, यदि आप स्थिर कोड विश्लेषण को मूल्यवान मानते हैं, तो तीनों में से किसी भी मूल्य को अस्वीकार करने का कोई मतलब नहीं है, लेकिन तीनों का उपयोग करने के लिए, आपको उपयोगी प्रतिक्रिया देने के लिए उन्हें कॉन्फ़िगर करने के लिए समय का निवेश करना होगा।


6

सोनार (http://www.sonarsource.org/) कोड गुणवत्ता का प्रबंधन करने के लिए एक बहुत ही उपयोगी खुला मंच है, और इसमें चेकस्टाइल, पीएमडी, फाइंडबग्स और बहुत कुछ शामिल है।

यह भी इंगित करता है कि सभी 3 उपकरणों को अस्तित्व में उनका अधिकार है ...


5

दोनों उपकरण विन्यास योग्य हैं और केवल एक ही चीजों के बारे में कर सकते हैं। उन्होंने कहा, अगर हम आउट-ऑफ-द-बॉक्स सामान के बारे में बात कर रहे हैं, तो ओवरलैप का एक बड़ा सौदा है, लेकिन अलग-अलग नियम / चेक भी हैं। उदाहरण के लिए, चेकस्टाइल में जावदोक की जाँच करने और एक जोड़े के नाम के लिए जादू की संख्या खोजने के लिए मजबूत समर्थन है। इसके अतिरिक्त, चेकस्टाइल में एक "आयात नियंत्रण" सुविधा है जो मैकर की कार्यक्षमता के समान है (मैंने मैकेर का उपयोग नहीं किया है)।

यदि ऐसी चीजें हैं जो आपके लिए महत्वपूर्ण हैं कि चेकस्टाइल पीएमडी नहीं करता है, तो आप केवल उन चेक के साथ न्यूनतम चेकस्टाइल कॉन्फ़िगरेशन पर विचार कर सकते हैं। फिर एक ऐसी नीति स्थापित करें जिसमें चेकस्टाइल कॉन्फ़िगरेशन विकसित न हो, बस चेक को हटा दें जैसा कि आप कहते हैं, कस्टम पीएमडी नियमों के साथ समान कार्यक्षमता लागू करते हैं।

यह भी विचार करें कि यदि आप तय करते हैं कि चेकस्टाइल "आयात नियंत्रण" सुविधा कवर करती है जो आप मैकेर से चाहते थे, तो आप पीएमडी / मैकेकर के बजाय पीएमडी / चेकस्टाइल लागू कर सकते हैं। किसी भी तरह से यह दो उपकरण हैं, लेकिन चेकस्टाइल के साथ, आपको वह सामान मिलेगा जो पीएमडी "फ्री में" नहीं करता है।


5

चेकस्टाइल और पीएमडी दोनों कोडिंग मानकों की जाँच करने में अच्छे हैं और विस्तार में आसान हैं। लेकिन पीएमडी के पास साइक्लोमैटिक जटिलता, एनपैथ जटिलता आदि की जांच करने के लिए अतिरिक्त नियम हैं, जो आपको स्वस्थ कोड लिखने की अनुमति देता है।

PMD का उपयोग करने का एक अन्य लाभ CPD (कॉपी / पेस्ट डिटेक्टर) है। यह परियोजनाओं के दौरान दोहराव का पता लगाता है और JAVA के लिए बाध्य नहीं होता है। यह JSP के लिए भी काम करता है। नील फोर्ड की मेट्रिक्स ड्रिवेन एजाइल डेवलपमेंट पर एक अच्छी प्रस्तुति है , जो जावा / जावा ईई डेवलपमेंट के लिए सहायक कई उपकरणों के बारे में बात करती है।


4
किसी के लिए भी बताने वाले व्यक्ति को इस ... checkstyle अब इन checkstyle.sourceforge.net/config_metrics.html checkstyle.sourceforge.net/config_duplicates.html
smp7d

4

मुझे लगता है कि चेकस्टाइल और पीएमडी स्टाइल मुद्दों और सरल स्पष्ट कोडिंग बग को लागू करने के लिए सर्वश्रेष्ठ हैं। हालांकि मैंने पाया है कि मुझे ग्रहण का उपयोग करना पसंद है और यह सभी चेतावनी उस उद्देश्य के लिए बेहतर प्रदान करती है। हम साझा प्राथमिकताओं का उपयोग करके और उन्हें वास्तविक त्रुटियों के रूप में चिह्नित करके सामान लागू करते हैं। इस तरह, वे पहली बार में जाँच नहीं पाते हैं।

मैं FindBugs का उपयोग करते हुए दृढ़ता से और उत्साहपूर्वक अनुशंसा करता हूं। क्योंकि यह बाइटकोड स्तर पर काम करता है, यह उन चीजों की जांच कर सकता है जो स्रोत स्तर पर असंभव हैं। हालांकि यह जंक का अपना उचित हिस्सा है, लेकिन इसने हमारे कोड में कई वास्तविक और महत्वपूर्ण बग पाए हैं।


4

और 10 साल बाद ... 2018 में मैं उन सभी का उपयोग करता हूं चेकस्टाइल, पीएमडी और फाइंडबग्स।

FindBugs से शुरू करें । शायद बाद में पीएमडी और चेकस्टाइल जोड़ें।

कभी भी आँख बंद करके डिफ़ॉल्ट नियमों को लागू न करें !

कदम:

  • किसी प्रोजेक्ट पर डिफ़ॉल्ट नियमों के साथ एक टूल चलाएं जिसमें बहुत सारा कोड हो
  • इस परियोजना के नियमों को अनुकूलित करें, कुछ नोटों के साथ बेकार नियमों पर टिप्पणी करें
  • कम लटके फलों के नियमों (एनपीई, लकड़हारा की जांच, बिना संसाधन की जांच, ...) पर ध्यान दें
  • नियमों के लिए कुछ सुधार करें जो आप सार्थक पाते हैं (एक बार में!)
  • प्रत्येक उपकरण के लिए ऐसा करें लेकिन एक बार में ही नहीं!
  • इस प्रक्रिया को दोहराएं

आदर्श रूप से प्रत्येक परियोजना के अलग नियम हो सकते हैं। मुझे बिल्ड के माध्यम से नियम चलाना पसंद है (मावेन प्लगइन्स के माध्यम से) और नियम त्रुटियों पर असफल होने के बाद जब मुझे पता चलता है कि एक परियोजना मेरे द्वारा परिभाषित सभी नियमों को पारित करती है। यह डेवलपर्स को कार्रवाई करने के लिए मजबूर करता है, क्योंकि रिपोर्टिंग पर्याप्त नहीं है । उस बिंदु से आपकी परियोजना पर बहुत अधिक बुलेट प्रूफ है और आप बाद में और भी नियम जोड़ सकते हैं और / या कस्टम नियम लिख सकते हैं।


FYI करें, स्पॉटबग्स "फाइंडबग्स के आध्यात्मिक उत्तराधिकारी" हैं , और स्पॉटबग्स प्रलेखन बहुत अच्छा है। जहां तक ​​मुझे पता है फाइंडबग्स को सालों से अपडेट नहीं किया गया है।
स्कोमीसा

स्पॉटबग्स के बारे में कभी नहीं सुना, शायद इसलिए कि FindBugs + fbcontrib काफी लंबे समय के लिए पर्याप्त था, यह जानने के लिए अच्छा है कि कुछ प्रतिस्थापन है
क्रिस्टोफ रूसो

इसके बारे में कुछ चर्चा यहाँ है: news.ycombinator.com/item?id=12885549
क्रिस्टोफ़

यह भी ध्यान देने योग्य है कि उपकरण में विन्यास योग्य संवेदनशीलता होती है। जैसे जब FindBugs / SpotBugs से शुरुआत करते हैं तो आपको केवल सबसे गंभीर बग को पकड़ने के लिए एक उच्च सीमा चुनने की आवश्यकता हो सकती है, फिर जैसे ही आप चीजों को ठीक करेंगे, थ्रेशोल्ड को कम करें।
22

@ThrawnCA हां, लेकिन संवेदनशीलता के साथ भी: एक बड़ी परियोजना पर भी कई त्रुटियों को उचित समय में तय किया जाएगा। इसलिए मैं इसके बजाय एक नियम को एक समय में जोड़ देता हूं, जो कि संभावित एनपी डिटेक्शन जैसे सबसे कम लटकने वाले फलों से शुरू होता है, फिर बिना संसाधनों के नियमों पर चलते हैं।
क्रिस्टोफ रूसो

3

एक बिंदु जो मैंने अब तक नहीं देखा है वह यह है कि आईडीई के लिए प्लगइन्स हैं जो आपके कोड पर चेकस्लेट नियम लागू करेंगे, जबकि पीएमडी प्लगइन्स केवल उल्लंघन पर रिपोर्ट करेंगे। उदाहरण के लिए, कई प्रोग्रामिंग टीमों पर एक बहु-साइट परियोजना में, मानकों को सक्रिय रूप से लागू करना महत्वपूर्ण है, बजाय उन पर रिपोर्ट करने के।

दोनों टूल में IntelliJ, NetBeans और Eclipse के लिए उपलब्ध प्लगइन्स हैं (मेरे विचार में यह सबसे अधिक उपयोग को कवर करता है)। मैं नेटबीन्स से उतना परिचित नहीं हूं, इसलिए केवल इंटेलीज और एक्लिप्स पर टिप्पणी कर सकता हूं।

वैसे भी, इंटेलीज और एक्लिप्स के लिए पीएमडी प्लगइन्स मांग पर रिपोर्ट उत्पन्न करेंगे प्रोजेक्ट कोडबेस के भीतर पीएमडी उल्लंघन पर ।

दूसरी ओर, चेकस्ली प्लग, मक्खी पर उल्लंघनों को उजागर करेगा, और कम से कम (इंटेलीज के लिए, मेरे पास एक्लिप्स के साथ कम अनुभव है) स्वचालित रूप से कुछ मुद्दों को बदलने के लिए कॉन्फ़िगर किया जाएगा (उदाहरण के लिए 'OneStatementPeronine', CR-LF को जगह देगा। 'आवश्यकताओं के लिए', कथनों के बीच, ब्रेसिज़ जोड़ेंगे जहाँ वे गायब हैं, आदि)। जाहिर है, केवल सरल उल्लंघन स्वचालित रूप से तय किए जा सकते हैं, लेकिन यह अभी भी विरासत परियोजनाओं, या कई स्थानों पर स्थित परियोजनाओं पर मदद करता है।

पीएमडी के लिए 'ऑन डिमांड' का मतलब है कि डेवलपर को सचेत रूप से रिपोर्ट चलाने का निर्णय लेना चाहिए। जबकि चेकस्टाइल उल्लंघन उनके द्वारा विकसित होते ही स्वतः रिपोर्ट किए जाते हैं। PMD जबकि करता है एक अधिक व्यापक नियम-सेट होते हैं, मेरे मन में स्वत: enforecement / IDEs में उल्लंघन की रिपोर्टिंग नियमों के 2 सेट बनाए रखने की परेशानी के लायक है।

इसलिए मैं जिन भी परियोजनाओं पर काम करता हूं, हम दोनों टूल्स का उपयोग करते हैं, IDE में लागू चेकस्टाइल, IDE में रिपोर्ट किए गए PMD और दोनों बिल्ड (जेनकिंस के माध्यम से) में रिपोर्ट किए गए और मापा जाता है।


1
निर्माण में इसे एकीकृत करने और उल्लंघन पर विफल करने के तरीके भी हैं (उदाहरण के लिए मावेन के साथ)। मैंने यह चेकस्टाइल, पीएमडी और फाइंडबग्स के लिए किया है। जैसा कि आपने कहा कि रिपोर्ट करना पर्याप्त नहीं है।
क्रिस्टोफ रूसो

3

Qulice-maven-plugin पर एक नज़र डालें जो चेकस्टाइल , पीएमडी, फाइंडबग्स और कुछ अन्य स्थिर विश्लेषणकर्ताओं को एक साथ जोड़ती है, और उन्हें पूर्व-कॉन्फ़िगर करती है। इस संयोजन की सुंदरता यह है कि आपको हर परियोजना में उन्हें व्यक्तिगत रूप से कॉन्फ़िगर करने की आवश्यकता नहीं है:

<plugin>
  <groupId>com.qulice</groupId>
  <artifactId>qulice-maven-plugin</artifactId>
  <version>0.15</version>
  <executions>
    <execution>
      <goals>
        <goal>check</goal>
      </goals>
    </execution>
  </executions>
</plugin>

एक रिपोर्ट (कुछ प्रयोग करने योग्य प्रारूप) पाने के लिए मैं इसे कैसे कॉन्फ़िगर करूं? अब यह केवल कंसोल को थूकता है, भले ही मैं log4j को कॉन्फ़िगर करता हूं। मैं देखता हूं कि एक बग रिपोर्ट है, जो संबंधित हो सकती है, लेकिन मुझे यकीन नहीं है।
एडम एरॉल्ड

हम ऐसा ही सोच रहे हैं लेकिन इसे ठीक करने के लिए मुझे अपने कोड या कुछ इसी तरह से हाइलाइट करने की आवश्यकता है। कम से कम आपकी settings.jarमदद की।
एडम अरोल्ड

2

मैं टिप्पणी को प्रतिध्वनित करूंगा कि पीएमडी जावा स्टाइल / कन्वेंशन चेकिंग के लिए अधिक वर्तमान उत्पाद है। फाइंडबग्स के संबंध में, कई वाणिज्यिक विकास समूह कवरेज का उपयोग कर रहे हैं।


1

पीएमडी वह है जो मैं अधिक लोगों को संदर्भित करता हूं। चेकस्टाइल वह था जिसका लोग 4 साल पहले जिक्र कर रहे थे, लेकिन मेरा मानना ​​है कि पीएमडी को लगातार बनाए रखा जाता है और अन्य आईडीई / प्लगइन्स किसके साथ काम करते हैं।


2
2008 में सच है, लेकिन आज चेकस्टाइल ने बहुत तेजी से उठाया है।
बारफूिन

1

मैंने अभी चेकस्टाइल और पीएमडी का उपयोग करना शुरू किया है। मेरे लिए, पीएमडी चीजों के लिए अनुकूलित नियम बनाना अधिक आसान है, जैसे कि क्या System.gc (), Runtime.gc () मौजूद है, जब तक आप XPath क्वेरी लिख सकते हैं जो कि बिल्कुल भी मुश्किल नहीं है। हालांकि, पीएमडी ने मुझे नहीं दिखाया है कि इसमें कॉलम नंबर दिखाने की सुविधा है। तो चेक कॉलम सीमा जैसी चीजों के लिए। आप चेकस्टाइल का उपयोग करना चाहेंगे।


-2

जब जाँच की तुलना में पीएमडी सबसे अच्छा उपकरण है। चेकस्टाइल्स में कोड का विश्लेषण करने की क्षमता नहीं हो सकती है जबकि पीएमडी ऐसा करने के लिए कई सुविधाएँ प्रदान करता है! ऑफ़कोर्स पीएमडी ने javadoc, टिप्पणियों, इंडेंटेशन और आदि के लिए नियम जारी नहीं किए हैं और जिस तरह से मैं इन नियमों को लागू करने की योजना बना रहा हूं ....... thanx


चेकस्टाइल के बारे में एक अच्छी बात यह है कि रेगेक्सप्सलिंगलाइन जैसे कुछ लचीले नियम की अनुमति देता है ...
जिगर शाह
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.