Game Development Reference
In-Depth Information
PART V
Techniques
for Legacy
Interoperability
Programming is like sex: one mistake and you have to support it for the rest
of your life.
Michael Sinz
The .NET platform is relatively new technology, so the majority of game develop-
ment studios still have legacy code that they have invested large amounts of time
and money into developing. Conversions and ports do not happen overnight, and
some situations require that a wrapper or interface be built around legacy technol-
ogy instead of updating it. Considerable resources have been spent on researching
and attempting ways to interoperate between managed and unmanaged applica-
tions. The long-term goal of a tools team should be to have a purely managed code
base, but it will take some time and commitment to reach such an objective. For a
short-term plan, a solid course of action will be to slowly migrate key components
over to managed code, exposing wrappers that allow the existing legacy applica-
tions to still consume them without errors. As each component is migrated and as
dependencies on legacy components are reduced, you will be able to start getting
rid of unmanaged wrappers. Obviously, any new components will targeted at the
managed runtime. Over time, you will end up with a purely managed solution that
exists solely on the managed runtime.
Search Nedrilad ::




Custom Search