Les méthodes itératives telles que celles que l'on trouve couramment dans les langages modernes tels que C #, JavaScript et (espérons-le) dans Java 8 réduisent-elles l'impact de la complexité cyclomatique sur la compréhensibilité et la prise en charge du code?
Par exemple, en C #, nous pourrions avoir le code suivant:
List<String> filteredList = new List<String>();
foreach (String s in originalList){
if (matches(s)){
filteredList.add(s);
}
}
Cela a une complexité cyclomatique simple de 2.
Nous pourrions facilement réécrire ceci comme:
List<String> filteredList = originalList.where(s => matches(s));
Qui a une complexité cyclomatique simple de 0.
Cela se traduit-il réellement par un code plus supportable? Existe-t-il des recherches réelles sur ce sujet?