One of the differences between a designer and an ActiveX control is the ability to implement the designer’s run-time features in a separate run-time object. The advantages of this approach are many: the run-time object can be optimized without incurring the design-time object's overhead; the run-time object need not present a user interface; and its features and functions can be completely different from that of the design-time object and can depend only on the persistent data generated at design time. This section details what is required to implement a separate run-time instance of a designer.