The Concept-Oriented Project | |
Introduction |
|
Concept-orientation is a new paradigm in
computer science, which follows a set of the following fundamental
principles:
An elementary part of space is referred to as concept, which generalizes such terms as class in programming, table/relation in databases, scope/environment in design. More information on this approach can be found on the concept-oriented portal http://conceptoriented.com |
|
Concept-Oriented Data Model |
|
The concept-oriented data model (CODM) is the
next generation approach to data modelling based on the principles of the
Concept-Oriented paradigm. This method is based on the assumption that data
items are living in concepts where each concept is a combination of a number
of superconcepts. Formally complemented by the top concept and the bottom
concepts this structure constitutes a lattice (an order satisfying certain
properties). Each item is defined as a combination of some superitems taken
from the corresponding superconcepts.
Syntax More information can be found on the site http://conceptoriented.com |
|
Concept-Oriented Programming |
|
The concept-oriented programming (COP) is the next generation approach to programming based on the principles of the concept-oriented paradigm. This method is based on the assumption that any system functionality is determined in great extent by its space structure and its border functionality. It is supposed that representation and access are not implemented automatically by default but rather are an integral part of the whole system. Thus developing a system in this approach means describing its concept structure and defining its border functions. Such a system can exhibit rather complex behavior even if its objects are very simple. Functioning in such a concept-oriented program means accessing indirectly represented objects. Since objects are living in different concepts each access request requires intersecting their borders and hence executing the corresponding functions. In contrast to object-oriented-programming approach the concept-oriented programming distinguishes a special role of concepts in any complex program. Indeed in OOP objects are supposed to describe all the program functionality while in COP concepts are responsible for some functions (in some systems even for most of their complexity). This approach can be then viewed as a generalization of OOP where we are able to describe in one and the same program not only business methods of objects but also representation and access functions. In OOP we suppose that having an object reference is enough to send messages, call methods or perform types of interactions. However, in the concept-oriented paradigm it is assumed that no interactions can be executed instantly and any program needs special mechanisms for propagating them. This mechanism of representation and access (RA) is an important part of any program. In this sense COP is aimed at providing means for describing such a functionality within one language. |
|
Concept-Oriented Design |
|
The concept-oriented design (COD) is the next generation approach to system design based on the principles of the concept-oriented paradigm. This method is based on the assumption that all components of the system are living in some environment or container with concrete borders. An environment can be included into other environments and include itself many internal environments. The structure of the system containers determines most of its functionality and has to be defined before objects are placed into the system. | |
Links |
|
http://conceptoriented.com - The Concept-Oriented Portal http://conceptoriented.com/faqs/co-faq.html - FAQ on the concept-oriented paradigm http://conceptoriented.com/faqs/cop-faq.html - FAQ on the concept-oriented programming http://conceptoriented.com/faqs/codm-faq.html - FAQ on the concept-oriented data model http://conceptoriented.com/faqs/coql-faq.html - FAQ on the concept-oriented query language |
|
Contact |
|
Alexandr Savinov |
|