Apakah metode berulang seperti yang biasa ditemukan dalam bahasa modern seperti C #, JavaScript, dan (mudah-mudahan) di Java 8 mengurangi dampak kompleksitas siklomatik pada pemahaman dan dukungan kode?
Misalnya dalam C # kita mungkin memiliki kode berikut:
List<String> filteredList = new List<String>();
foreach (String s in originalList){
if (matches(s)){
filteredList.add(s);
}
}
Ini memiliki kompleksitas siklomatik sederhana 2.
Kita dapat dengan mudah menulis ulang ini sebagai:
List<String> filteredList = originalList.where(s => matches(s));
Yang memiliki kompleksitas siklomatik sederhana 0.
Apakah ini benar-benar menghasilkan kode yang lebih dapat didukung? Apakah ada penelitian aktual tentang topik ini?