December 2015
Beginner to intermediate
832 pages
26h 13m
English
Design can be a rather elusive subject. Very often, one meets people who claim that some design is “elegant” or “crap,” as the case may be, and who seek to substantiate that claim with rather abstract concepts such as “loose coupling” or the need for “shotgun surgery,” respectively. It is not uncommon to have heated debates about, and almost religious beliefs in, certain design approaches.
From a more practical, down-to-earth point of view, design can be understood just as structuring the solution to a problem. From this perspective, we all design every day because we simply cannot avoid it. Before we start typing out any code, we make a plan, however briefly, about what we are going to type. For common ...