The Houdah frameworks are designed with strict Model-View-Controller principles in mind. In the presentation layers, WebObjects already takes care of separating view from controller by using several distinct files to declare a single component. The .wod bundle specializes in the view aspects. The corresponding Java class contains mostly controller code. The Houdah frameworks take this a step further by recognizing that some strictly view code can pollute the component's Java class. We add another layer of separation by distinguishing between components which act as views and components which act as controllers.
The HoudahViewComponents framework implements a completely generic and reusable view layer. It provides high-level view components for thin client three tier web applications. The framework is based upon the presentation layer of the WebObjects application server. As such it has dependencies only on the Foundation, EOControl and AppServer level frameworks. Its dependency on EOControl has been kept minimal so that it may be used with control layers that don't rely on EOF for persistence.