Object class
Object classes express static descriptions of data and behavior through properties and rules containing knowledge on how to respond to different events, respectively. Object classes aim to represent something that exist in the real world, which is both conceptually comprehensible and stable over time.
Genus Apps allows you to define object compositions, which are object classes composed of other object classes. Object compositions makes it possible to combine simple objects into more complex ones. For instance, the objects wheel, steering wheel, seat, gearbox and engine may have no functionality by themselves, but if you compose them, they may form an automobile object which has a higher function (or is greater) than the sum of its parts.
Object classes are categorized in three types of domains in Genus:
- Object domains. Objects that abstract entities in the business that the model represents, e.g. order, line item and invoice objects in an order entry application.
- Code domains. Objects that define a finite set of named code values used to classify domain objects, e.g. gender (male, female) and civil status (single, married, cohabitant) code domains for classifying a person.
- Identifier domains. Objects that are used to assign a unique identifier to a domain object. There are two types of identifier domains: Sequential counter and pool. A sequential counter generates a unique numeric identifier which is incremented by one each time an identifier is assigned to a domain object. A pool contains a finite set of identifiers used for identifying a domain object, e.g. a set of employee numbers which are marked as taken and cannot be assigned to others if utilized.