3 ms·
If they're "extra" then they are unnecessary; I define code bloat strictly as redundant code inside the source tree. Redundant code has performance and resourc
by geocar 12y ago
If they're "extra" then they are unnecessary; I define code bloat strictly as redundant code inside the source tree.
Redundant code has performance and resource ramifications: Programs that are bigger load slower (more bytes to pull from disk) and run slower (more trips in and out of cache memory).
Redundant code also has other ramifications: Two modules in the same source tree may attempt similar (or identical) algorithms and miss an opportunity to consolidate. One of them might hide a bug, where the other code path was executed more frequently and the bug fixed.
- icsa 12y agoI have seen this on a grand scale - 72MM LOC over multiple versions (10 year span) of multiple products by the same well-known software company. The occurrence of nearly identical code was the most surprising find. One product had minimal redundancy. It used a plug-in architecture for the entire application - not just for extensions.
- cbd1984 12y agoYour idea of "superfluous" is my idea of "just enough", and vice-versa. For example, why have Bentley when we already have Ford? Multiple car manufacturers is surplus, waste, and bloat.
- geocar 12y agoI didn't use the word "superfluous". I define code bloat strictly as redundant code inside the source tree. Car manufacturers do not exist inside the source tree. They aren't even obviously unnecessary; After all, people have different tastes about whether they like a Bentley or they like a Ford. The computer (however) does not have taste, and it doesn't care whether you like your strcmp or my strcmp.