# Core API: Design Principles

$Id$

(not much here yet) The only thing right now that qualifies as a principle is that core-to-platform communication upward goes via listeners, and ditto downward goes via virtual method calls. That's a general statement, other methods of interaction may in fact be in use or desirable. It may also be that Opera would prefer communication from the platform code up into the porting interface to be via listeners.