Timeline for What are the potential tradeoffs for lower down Cyclomatic Complexity
Current License: CC BY-SA 3.0
10 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Jul 29, 2016 at 13:06 | comment | added | JacquesB | @JohnR.Strohm: I disagree with this distinction. Accidental complexity means a program is more complex than necessary to fulfill its requirements. Whether the requirements include "bells and whistles" (a subjective opinion) is beside the point. | |
Jul 28, 2016 at 21:49 | comment | added | John R. Strohm | @TulainsCórdova, no, what I am saying is that, IN THE REAL WORLD, complexity and size frequently go hand-in-hand. I am also drawing a very strong line between "complexity" (an inherent attribute) and "complicatedness" (what happened when Marketing got their paws all over the project spec and added forty pounds of bells and whistles). "Complex" is an adjective. "Complicated" is the past tense of a transitive verb, as in "This was a simple system until Joe complicated the frack out of everything." | |
Jul 28, 2016 at 20:28 | comment | added | Jiahang Li | I agreed with your argument that adding private function won't lower down the CCN of a class, but that's no the measurement module we should choose, but instead a function base would be more beneficial. | |
Jul 28, 2016 at 20:25 | comment | added | David Arno |
Nice answer, but I especially love your random throw new FileNotFoundException(); line :)
|
|
Jul 28, 2016 at 19:39 | comment | added | Tulains Córdova | @JohnR.Strohm Are you equaling complexity with size (line count)? | |
Jul 28, 2016 at 19:20 | history | edited | JacquesB | CC BY-SA 3.0 |
added 563 characters in body
|
Jul 28, 2016 at 19:07 | comment | added | Mason Wheeler | @JohnR.Strohm That's actually a very good explanation of the concept of essential complexity vs. accidental complexity. | |
Jul 28, 2016 at 19:04 | history | edited | JacquesB | CC BY-SA 3.0 |
added 204 characters in body
|
Jul 28, 2016 at 19:03 | comment | added | John R. Strohm | The complexity (size) of the overall program is, in general, controlled by the complexity (size) of the problem to be solved. This is before the human tendency to complicate the hell out of everything, because it is more fun to make a mess than clean one up, is taken into account. The purpose of abstraction (moving things to sub-functions) is to make the pieces easier to develop, test, and manage, which reduces the overall effort required to develop, test, and manage the whole thing. This is CS 101. | |
Jul 28, 2016 at 18:58 | history | answered | JacquesB | CC BY-SA 3.0 |