Differences in aspect-oriented, subject-oriented and role-oriented programming.
I know there are many research papers, books and websites describe these three paradigms, but I think the broad contours of interpretation. There are about these topics, so in a sense what I say, I've learned to share with the world the definition of this topic a few good description.
1. Subject-oriented programming
Subject from object-oriented programming object-oriented as very different. In object-oriented, internally defined object (which is based on a model that describes it). Exported (attributes) and methods (behavior) on the basis of its properties. The application is only allowed to use these attributes and behaviors. In contrast to this, the main object-oriented programming, the object is not present (and modeling) in such isolation. Objects in this process, but their behavior is beyond the scope and control of various objects, such as "subjects" to provide it "acts independently defined manner" as the object of expanding the original target species, I think it would be far far beyond compared to what is being discussed here is an inherited template's definition. Topic object-oriented programming "in the third dimension." Also known as program
2. Aspect-oriented programming
Aspect-oriented programming, from the "separation of concerns" concept. Basically, it extends the program or whether it is an object-oriented program design concern is crossed. Too simple to say that the software functional requirements and non-functional. These cross-cutting requirements include things like logging, exception handling, thread synchronization, memory management, optimization examples. Any other cross-sectoral aspects of these functions should be separate and independent of the performance and implementation.
3. Role-oriented programming
When we gradually developed into agents, many times, it needs to define "roles", which shows the agent activity and accurate end depends on it. This is similar to the concept of human understanding environmental goals.
Its main purpose is to mandate cooperation process called decoupling structure clear goals, from its ability to cooperate. A character, and is modeled as a function of the expected behavior of a group. However, these methods also allow the modeling environment, and how the agent / object can be aware environment.
Modeling and role-based research, proposed various frameworks. I know which one is the brain.