Game Development Reference
…the cost of adding a feature isn't just the time it takes to code it. The cost
also includes the addition of an obstacle to future expansion. … The trick
is to pick the features that don't fight each other.
The main purpose of this topic is not to function as a topic on toolset design, but
rather on implementation issues facing tools developers. In order to properly illus-
trate some techniques discussed later on in this topic, the chapters in this part focus
on design fundamentals and tools discussion to help introduce you to the concepts
behind tools development. The chapters in this part cover many of the core aspects
and fundamentals of toolset design, including defining what a toolset is, common
applications, describing why flexible and reusable tools are important, and also
discussing a few commercial toolsets that have shipped with titles.
Also covered are some techniques and approaches used to properly design and
manage the development of a toolset. The common life cycle of development is
explained, summarizing the four phases of the “waterfall” methodology; planning,
analysis, design, and implementation. There are also a number of .NET-specific
topics that cover everything from coding conventions to architecture implementa-
tion. There is also a chapter that describes what unit testing is, and how to perform
unit testing in C#.NET.