أداة البحث عن انتهاك قانون ديميتر؟ [مغلق
-
27-09-2019 - |
سؤال
هل يعرف أي شخص أداة يمكنني استخدامها مع تطبيق C# للعثور على قانون ديميتر المحتمل؟ أعلم أنه سيعطي الكثير من الإيجابيات الخاطئة ، لكنني أعتقد أنه قد لا يزال مفيدًا. خاصة خلال عملية التصميم المبكرة.
المحلول
إذا كنت تبحث فقط something.somethingelse.violation
, ، ثم يمكنك استخدام Visual Studio.
في مربع الحوار Find ، حدد المربع الموجود في الأسفل "للاستخدام" وحدد "التعبيرات العادية".
ليست قوية للغاية ، ولكن يمكنك استخدامها <[:a_]+\.([:a_]+\.)+[:a_]+
للعثور على النمط أعلاه.
ستكون أداة أفضل grep
أو ما شابه في دليل الحلول ، حتى تتمكن من استخدام خيارات Regex أكثر قوة مثل Lookbehind السلبية ، والتي تتيح لك استبعاد أشياء مثل using
التوجيهات و namespace
إعلانات.
من المحتمل أن تكون بسرعة كبيرة في كتابة تطبيق .NET من شأنه أن يتكرر ملفًا معينًا والبحث. الحق في محرر التعليمات البرمجية المصدر.