Subject-oriented programming
|
Subject-oriented programming is a method of program composition that supports building object-oriented systems as compositions of subjects, extending systems by composing them with new subjects, and integrating systems by composing them with one another (perhaps with glue or adapter subjects).
The flexibility of subject composition introduces novel opportunities for developing and modularising object-oriented programs. Subject-oriented programming-in-the-large involves dividing a system into subjects and writing rules to compose them correctly. It complements object-oriented programming, solving a number of problems that arise when OOP is used to develop large systems or suites of interoperating or integrated applications.
In subject-oriented programming, a subject is a collection of classes or class fragments whose class hierarchy models its domain in its own, subjective way. A subject may be a complete application in itself, or it may be an incomplete fragment that must be composed with other subjects to produce a complete application. Subject composition combines class hierarchies to produce new subjects that incorporate functionality from existing subjects.
See also
External link
- IBM subject-oriented programming (http://www.research.ibm.com/sop/)
- This article was originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL.