Game Development Reference
Other Entry Points
The nature of this architecture promotes loosely coupled design and distributed
services or entry points. This architecture could be extended to provide its func-
tionality to other technologies in many ways, but I will briefly mention three of the
more common ones.
Many different entry points could be added to this architecture, and the design
promotes both maintainability and reusability. There is nothing very complicated
about this architecture, yet the benefits make it a worthwhile design idea to adopt
into your development practices.
There are a number of excellent reasons for supporting a remoting entry point. The
biggest advantage is that the tool logic resides on a server machine and clients request
a proxy object to it, greatly simplifying deployment and versioning. Changing the
specific tool logic on the server would be instantly reflected by all client applications
accessing it, completely avoiding the need to update the client applications.
Later in this chapter, an alternate architecture is presented that uses remoting as a
bridge between entry points and the specific tool logic to promote simple push
deployment to users.
There are a couple of worthwhile possibilities with this entry point in regards to
reporting and statistics. Functionality could be added to the specific tool logic that
can return a report of the files affected by the tool, the user who accessed the tool
last, total size of files modified, and any other information that would be useful to
record for the tool.
A web entry point could also be useful for launching processes remotely, without
requiring an application installed on the client machine to do so. For example,
imagine a tool that would back up a certain directory to another server when run.
A tool like this would normally need to be installed on all client machines that
needed to use it, but with a web entry point, the backup could be launched remotely
through a normal web browser.
Migrating components to the .NET platform will take some time, and definitely
won't take place overnight. The ability to migrate each component one at a time