In short: go component-based. Narrower interfaces, more orthogonality, easy to change behavior at runtime.
evidence:
http://www.gamearchitect.net/Articles/GameObjects1.html
http://web.archive.org/web/20030222160835/http://www.incagold.com/pipermail/sweng-gamedev/2001-February/002883.html
http://www.gotw.ca/publications/mill06.htm
Theme: Silver is the New Black. Blog at WordPress.com.
Get every new post delivered to your Inbox.