Reduzieren iterative Methoden, wie sie üblicherweise in modernen Sprachen wie C #, JavaScript und (hoffentlich) in Java 8 zu finden sind, die Auswirkungen der zyklomatischen Komplexität auf die Verständlichkeit und Unterstützbarkeit von Code?
Zum Beispiel könnten wir in C # den folgenden Code haben:
List<String> filteredList = new List<String>();
foreach (String s in originalList){
if (matches(s)){
filteredList.add(s);
}
}
Dies hat eine einfache zyklomatische Komplexität von 2.
Wir könnten dies leicht umschreiben als:
List<String> filteredList = originalList.where(s => matches(s));
Welches hat eine einfache zyklomatische Komplexität von 0.
Führt dies tatsächlich zu mehr unterstützbarem Code? Gibt es aktuelle Forschungsergebnisse zu diesem Thema?