Skip to Main content Skip to Navigation

Du découpage à l'assemblage non anticipé de composants :
Conception et mise en oeuvre du langage à composants Scl

Abstract : Component-based software development (CBSD) promises costs reduction during the development, the maintenance and the evolution of a software. Currently, a lot of propositions claim to be "component-oriented" but they generally differ in several points like their objectives, their abstractions and their mecanisms. Moreover, it is difficult to use CBSD in practice because of the lack of semantically founded and really usable component-oriented languages (COL). In this context, we address the folowing problematics: What is a COL? What are the advantages of those languages? How to realise a COL?
This work purposes the programming language Scl to enable component-oriented programming (COP) in practice. Scl has been built to be: (i) miminal because all its abstractions and mechanisms respond to an identified need; (ii) simple because these abstractions and mechanisms are of a high-level; (iii) detailled because during the cocneption of Scl we study a lot of crucial points usually forgotten by other propositions such as self-references, arguments passing based on connections or considering base components (collections, integer, etc) in a unified world; (iv) dedicated to COP because it integrates the two key points that we identified: decoupling and unanticpation.
The core of Scl is built upon the following concepts: component, port, service, connector, glue code and the following mechanisms: port binding, service invocation. We also study the separation of concerns in the source code. In this area, Scl improves the "symmetric" aspect-oriented approaches and enables the use of a component as a regular component or a crosscutting component. Deeper in the separation of concerns, Scl also enables component connections based on state changes of their properties. Component programmers do not have to write special code in order to enable this kind of connections. Two prototypes of Scl are available. The more advanced one is written in Smalltalk and the other has been started in Ruby.
Document type :
Domain :
Complete list of metadatas
Contributor : Luc Fabresse <>
Submitted on : Tuesday, May 20, 2008 - 12:17:47 PM
Last modification on : Tuesday, July 28, 2020 - 4:28:02 PM


  • HAL Id : tel-00207499, version 2



Luc Fabresse. Du découpage à l'assemblage non anticipé de composants :
Conception et mise en oeuvre du langage à composants Scl. domain_other. Université Montpellier II - Sciences et Techniques du Languedoc, 2007. Français. ⟨tel-00207499v2⟩



Record views


Files downloads