Patent ID: 6968538

Claim:
A computer-implemented programming method, comprising: providing a runtime environment including a client application implementing an object model, the object model including a hierarchy of object classes capable of being instantiated in the client application, the object model also including one or more class templates, each class template having an associated class type and including class functionality information for a custom class capable of being implemented in the client application, the class functionality information for each class template including a set of required class functionality for the associated class type and a set of elective class functionality for the associated class type; receiving in the client application a first user input including a custom class creation request specifying a class type for a custom class; in response to the first user input, launching a design-time environment for defining custom object classes; retrieving the class functionality information for the class template associated with the specified class type; receiving in the design-time environment a second user input specifying a subset of the elective class functionality to be implemented in the custom class; and generating in the design-time environment a class definition defining a custom class having the required class functionality and the specified elective class functionality, wherein objects belonging to the custom class are capable of being instantiated from the runtime environment independent of the design-time environment.