GAE/Coding Conventions

From MegaGlest
Revision as of 02:51, 16 July 2009 by Hailstone3 (talk) (Code Organisation)
Jump to: navigation, search

These conventions only apply to new code. Don't spend lots of time modifying existing, working code.

Setters/Mutators

should be in the form of:

void setMyAttribute(type v) {myAttribute = v;}

as opposed to

void setMyAttribute(type myAttribute) {this->myAttribute = myAttribute;}

SVN Repository

Code Organisation

  • Don't create 'objects of convenience'. It creates tight coupling which makes it harder to maintain.

    Example:
    Unit = noun
    Update = verb
    "UnitUpdater" = noun + verb + 'er'

    The 'er' makes the whole thing a noun again, but it's artificial... there shouldn't be a 'UnitUpdater', we have a 'Unit', and it has an 'update' method.
    (adapted from Silnarm http://glest.org/glest_board/index.php?topic=4448.msg27291#msg27291 )


Platform Support

Glest officially supports Linux (through Jam build) and Windows (through MS VC++). When writing code try to keep this in mind.