Niedawno zacząłem używać SourceMonitor do przeglądania mojego (i innych) kodów. Chociaż rozumiem inne parametry oceniane przez narzędzie, nie wiem, w jaki sposób oblicza złożoność kodu. W jaki sposób wszystkie parametry uwzględniają numer złożoności?Jakie są parametry używane do obliczania złożoności w narzędziu SourceMonitor?
Odpowiedz
Znaleziono go w Pomoc -> Tematy Pomocy -> Objaśnienie Metrics językowych -> C# -> Max Method złożoności -> (Jest hyperling) Złożoność Value.
Source Monitor Complexity Value http://tinypic.com/r/10yi0kp/6
Trudno jest się o tym dowiedzieć bez ich podania, ale jedną z najczęstszych metod jest cyclomatic complexity - miara liczby tras za pośrednictwem kodu. Prosta procedura proceduralna od góry do dołu ma złożoność 1, z dodaniem do niej wszystkich pętli/gałęzi/odłowów itd. Chodzi o to, że jeśli to zbyt wysoko, twoja metoda robi zbyt wiele i powinna być refaktoryzowana na kilka mniejszych, bardziej ukierunkowanych metod.
Edytuj; from here:
Parser dla języka C# został dodany. Większość danych jest podobna do C++ i Java. Podstawową różnicą jest określenie sposobu "największego". Zamiast identyfikowania metody z większością instrukcji, dla C# dla każdego pliku znajduje się najbardziej złożona metoda. Pomiar złożoności jest podobny do złożoności cyklicznej - liczba możliwych ścieżek przez kod.
(podkreślenie moje), więc brzmi, jakby mieli nieco zmodyfikowany wariant zwykłego CC. Tylko oni mogą powiedzieć, co zrobili różne; p
- 1. Parametry RegisterClientScriptBlock są używane w rzeczywistych scenariuszach?
- 2. Jakie hashe (#) są używane w źródle biblioteki?
- 3. Jakie ramy testowania są używane w Railsach?
- 4. Narzędzie do obliczania skomplikowanej złożoności kodu Java w czasie O?
- 5. Jakie soczewki są używane/przydatne dla?
- 6. Jakie są domyślne repozytoria używane przez SBT?
- 7. Realistycznie, jakie funkcje pthreads są zazwyczaj używane?
- 8. Jakie są parametry wysyłane do pliku .fail w jQuery?
- 9. Jakie techniki są używane do debugowania złożonych wiązań guice?
- 10. Jakie są parametry numeru Pipe - Angular 2
- 11. Jakie są regulowane typ rodzajowy Parametry
- 12. Jakie są parametry "printto" przy użyciu shellexecute?
- 13. Jakie są najczęściej używane wyjątki środowiska wykonawczego w java?
- 14. Jakie są parametry php.ini do ustawienia wysyłania wiadomości e-mail?
- 15. jakie są najczęściej używane interfejsy w języku C#?
- 16. Jakie wzorce są używane w ramach Spring Framework?
- 17. Do czego są używane silnie połączone komponenty?
- 18. Jakie parametry są dozwolone w polityce gier na komputery stacjonarne?
- 19. Jakie porty są używane dla agenta VSTS/TFS Build/Release?
- 20. Jakie są zasady korzystania „wewnętrzne” parametry w SSRS
- 21. Jakie są parametry "res" i "req" w funkcjach Express?
- 22. Jakie struktury używane w aplikacjach java Desktop
- 23. Obliczanie złożoności cyklicznej
- 24. Jakie są parametry zależności Maven dla Java Gradle API?
- 25. Jakie techniki są używane przez programistów do pisania możliwych do utrzymania testów integracji/funkcjonalności/akceptacji?
- 26. Jakie transformacje są używane przez małe systemy do konwersji danych do porządku sieciowego?
- 27. Jakie są najlepsze narzędzia lub wtyczki do generowania kodu Java, które będą używane w środowisku Eclipse?
- 28. Dlaczego używane są anonimowe funkcje używane w strukturze kodu JavaScript?
- 29. `złożoność złożoności
- 30. Dlaczego wiodące zera są używane do reprezentowania liczb ósemkowych?