خطوط البرمجيات لقياس التعليمات البرمجية - هل التعليقات متضمنة؟ [مغلق
-
01-10-2019 - |
سؤال
كمشروع هواية وكتمرين تعليمي ، قررت تنفيذ برنامج برمجيات لقياس الكود في بيثون.
ومع ذلك ، لدي سؤال:
- هل التعليقات مدرجة في القياس؟
- النهج الذي تابعته هو: افتح الملف ، وقراءته من البداية إلى النهاية ، عد عدد الخطوط. إذا تم تجاهل التعليقات ، تخطي هذا الخط ، وتستمر وزيادة عداد. هل هذا كيف يتم ذلك؟
يرجى ملاحظة أنني أدرك أن هناك العديد من الأدوات الموجودة هناك وربما أفضل من أدواتك ((sloccount
مثال واحد) ، ومع ذلك أقوم بذلك كبرنامج هواة تمامًا.
المحلول
لن تحسب عادة التعليقات كخط رمز - ولكن يمكن أن يكون هذا مقياسًا مفيدًا في حد ذاته ، لذلك ربما يجب عليك الاحتفاظ بها أثناء تحليل الملف.
من الأفضل لك التحقق من الخطوط غير البيضاء ، وتنتهي مع CRLF مع عدم استمرار خط. في Regex Speak هذا يعني أنك تريد تجنب خطوط مثل هذا (على افتراض أن التراجع الخلفي هو استمرار خطك):
\\\s*\n\r
إذا وجدت خطًا كهذا ، فلا تزيد العداد. بالطبع قد يختلف Regex اعتمادًا على اللغة (المحرك) الذي تستخدمه ، وقد لا يكون استخدام regex هو الطريقة الأنسب للقيام بذلك - قد يكون محرك الحالة البسيط أفضل.
نصائح أخرى
- رقم
- ماذا لو تم لف سطر كود منطقي؟
لم يكن ذلك ممكنًا باستخدام أمر باش بسيط ، استخدم الأمر Bash في البرنامج النصي Python الخاص بك ، و import OS و Command :)