Foundations of a Simple and Unified Component-Oriented Language
Abstract
Component-oriented programming is actually a key research track in software engineering. A variety of component-oriented languages have been proposed with new or adapted abstractions and mechanisms to support this new paradigm. However, the proposed features vary quite widely from one proposal to another. There is a need for a closer analysis and synthesis of these features to really discover the new possibilities of component-oriented programming. In this article we present Scl, our proposition of simple language dedicated to component-oriented programming. Through the presentation of Scl, we discuss and compare the main features of component-oriented languages such as component class, component, interface, port, service or connector. But, these features are not enough to build a component-oriented language. Indeed, unanticipated connection of independently developed components is one of the key issues of component-oriented programming. Most approaches use language primitives or connectors and shared interfaces to connect components. But shared interfaces are in contradiction with the philosophy of independently developed components. The approach of Scl is to provide a uniform component connection mechanism based on special components called connectors. Scl also integrates component properties which enable connections based on component state changes with no requirements of specific code in components.
Loading...