| ▲ | sagenschneider 4 hours ago | |
When you think about a god class or god method, it occurs over time by adding more than a single responsibility. Yes, there are generally complex algorithms but they usually are not things developers write (imported from libraries). What is usually going on in the god class/method is that things keep getting added to it. These things should be separated out. So the cohesiveness of the class/method erodes into doing too many things. The idea of the Change Impact formula is to catch this early so you start refactoring to separate out into classes with single cohesive purposes. The problem with AI is it handles complexity really well and will happily keep piling changes into god classes/methods reaching ridiculous CC levels (have see over 200). Previously developers would get annoyed and do the refactor. But with AI these days, changes are happening faster. So Change Impact is to try to monitor the cohesive erosion. | ||