Software design

From Dave's wiki
Jump to navigation Jump to search

http://davetang.github.io/2014/11/13/software-design.html

From The Biostar Handbook:

Refactoring is an iterative process of improving code to reduce its redundancy and make it more generic and simpler. The reason we need refactoring is that typically a process becomes more well understood as we work and solve it. Periodically, we may need to revisit previous steps and rework them to match the later steps. Refactoring may feel wasteful, as often we modify what may seem to already be working just fine. But in any analysis, complexity can be a hindrance. Refactoring takes on complexity and attempts to simplify our work and will pay dividends in the future. Refactoring takes some practice and typically the returns are diminishing -- that is, every code can be refactored, but after a few rounds of doing so the benefits are typically much smaller.

Why is it good to stop a script when an error occurs? From the Pragmatic Programmer:

Dead programs tell no lies.