[MUD-Dev] MMORPG/MMOG Server design

Sean Kelly sean at ffwd.cx
Thu Feb 27 09:59:54 CET 2003


J C Lawrence wrote:
 
> The general approach I'd recommend is to never write code, or
> design, as if its the last iteration (ie YAGNI).  Instead design
> just enough for what you need, write just enough code to do what
> you want, and expect to come back to it again and again as your
> project rolls forward.  It seems counter-intuitive (but i know I'm
> going to need XXX and I might as well do it while I'm here!), but
> in practice it pans out rather well.  One of the nicer advantages
> of this approach is that you tend to have a much clearer view of
> the problem space (and the code) on revisits then you have on
> initial approach -- its a way of getting much of the advantages of
> the three pass rule at the micro-level.

I second this.  Design for easy maintenance and with a mind for
expansion, but don't bother will all sorts of hooks or generic
features for things you think you'll need down the road.  This tends
to result in a lot of added complexity that harms maintainibility
and will never be used -- some new need or thing you didn't think of
will always come up that violates the premises you built all that
extra framework on.

And follow the 80-20 rule.  Far too many programmers write
impossible to maintain code in an attempt to squeeze a few extra CPU
cycles out of a subsystem that is hardly ever executed.  By
optimizing only the parts that need it, the overall structure is far
more readable and easy to maintain while focusing work on the areas
that actually need it.  In my experience, simplicity breeds
efficiency.

There's a good article on assertions this month in the CUJ Experts
Forum: 

  http://www.cuj.com/experts/2104/alexandr.htm

Sean


_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev



More information about the mud-dev-archive mailing list