मैं पर्ल के लिए नया हूं, और वर्तमान में एक बड़ी और सुंदर गन्दा पर्ल परियोजना को बनाए रखने और बनाए रखने के लिए काम कर रहा हूं। मैं कोड में मुद्दों का पता लगाने में मदद करने के लिए perl-crit का उपयोग कर रहा हूं (और मुझे सर्वोत्तम प्रथाओं को भी सिखाता हूं)।पर्ल सशर्त में पहुंचने योग्य कोड का पता लगाने के लिए जो हमेशा झूठे मूल्यांकन करता है?
मौजूदा कोड में ऐसे स्थान हैं जहां कोडर ने पहुंच योग्य कोड बनाया है। उदाहरण के लिए, वे कोड शाखाओं में से कुछ टिप्पणी की एक आलसी रास्ता के रूप में जोड़ा '& & 0':
if ($req->param('donut') && 0) {
unreachable code...
} else {
always branches to here...
}
मैं आशा व्यक्त की चाहते हैं कि पर्ल या आलोचक मुझे इस तरह के मामलों में नहीं पहुंचा जा सकता कोड के बारे में चेतावनी है (जहां एक सशर्त के पास झूठ का मूल्यांकन करने का निरंतर मूल्य होता है), लेकिन ऐसा नहीं होता है।
क्या कोई उपकरण या स्क्रिप्ट का एक टुकड़ा है जिसका उपयोग मैं कर सकता हूं जो इस तरह की चीज़ का विश्वसनीय रूप से पता लगा सकता है?
जाहिर है मैं स्रोत में '& & 0' के लिए खोज सकता है, लेकिन तरीके सांकेतिक शब्दों में बदलनेवाला नहीं पहुंचा जा सकता कोड बनाया है हो सकता है कि के एक नंबर एक अगर बयान को जोड़कर '& & 0' के अलावा हैं।
+1 मुझे बी :: डिपार्ट के बारे में सूचित करने के लिए +1।हालांकि सशर्त के पहले भाग का साइड इफेक्ट मुझे स्पष्ट था (जिसका अर्थ है कि सशर्त अभिव्यक्ति को स्वयं संकलित नहीं किया जा सकता है), मुझे सशर्त के दूसरे भाग द्वारा पेश किए गए संदर्भ को बदलने के बारे में एहसास नहीं हुआ था । –