Concepts. This document presents the concepts of the Fractal component model. The Fractal model has been created in order to build, deploy and manage complex systems like applications, middleware platform or operating systems. The model is based on the following principles: composite components (component which contains sub-components) allowing to have a homogeneous view of the software architecture at different abstraction levels. Shared components (sub-components encapsulated by many different composite components) allowing the modeling of shared ressources, without losing encapsulation properties. The Fractal component model has been implemented in various programming languages, Java, C, C++, Smalltalk...A Fractal implementation allows you to manipulate Fractal concepts in the target language. Implementations don't always implement all concepts for various reasons,there is often more than one way to map concepts.
The Fractal specification provides conformance levels. But what is a component ? Fractal tutorials - Hello World. Chapter 1. Fractal Tutorials This project provides a collection of tutorials for the Fractal component model. The goal is to help users to be rapidly productive with the Fractal technology. This section should be read first. It introduces you Fractal concepts, and will help you to understand the following tutorials. All following tutorials are based on the same example. 1.4.
In this tutorial, we will create our first Fractal application. 1.5. In this tutorial, we will create our helloworld application without Fraclet. 1.6. In this tutorial, we will see how to create a Fractal application in pure Java without any other tools than the Java Fractal API. 1.7. In this tutorial we will see how to explore and reconfigure easily the architecture of our application. 1.8. In this tutorial, we will see how we can reconfigure our application with the help of fscript. Fractal - Tutorial.
Fractal Tutorial This tutorial explains how to program a Fractal component based application in Java, and how to deploy it. This tutorial is independent of any specific Java implementation of the Fractal component model, provided it is compliant with the 3.3 conformance level (cf. the Fractal specification). The example used throughout this tutorial is a very simple application made of two primitive components inside a composite component (see the figure below). The first primitive component is a "server" component that provides an interface to print messages on the console. It can be parameterized thanks to two attributes: a "header" attribute to configure the header printed in front of each message, and a "count" attribute to configure the number of times each message should be printed.
The other primitive component is a "client" component that uses the previous component to print some messages. 1 Implementation 1.1 Creating the component interfaces 1.2 Implementing the component classes. Fractal - Julia tutorial. Julia Tutorial This tutorial explains how to configure the Julia framework, and shows the results of several configuration options. 1 Julia Configuration File 1.1 Generalities When the getBootstrapComponent() method is called for the first time (see the Fractal Tutorial), and if the fractal.provider system property is set to org.objectweb.fractal.julia.Julia, the Julia framework initializes itself by reading the configuration files whose names are specified in the julia.config system property (in a comma separated name list such as "julia.cfg,julia1.cfg,julia2.cfg"). The Julia configuration files must define the "aliases" used in the newFcInstance method, such as "primitiveTemplate", "compositeTemplate", ...
A Julia configuration file uses a LISP-like syntax, and contains a set of alias definitions: (alias-name1 alias-definition1)(alias-name2 alias-definition2)... 1.2 Controller Descriptor Definitions The above list describes the controller objects of the component. 2 Configuration Examples. Microsoft PowerPoint - Fractal-Java-Lionel.ppt.
Fractal - Documentation. Fractal is a modular and extensible component model that can be used with various programming languages to design, implement, deploy and reconfigure various systems and applications, from operating systems to middleware platforms and to graphical user interfaces. Fractal is also a project with several sub projects, dealing with the definition of the model, its implementations, and the implementation of reusable components and tools on top of it. The Fractal component model heavily uses the separation of concerns design principle. The idea of this principle is to separate into distinct pieces of code or runtime entities the various concerns or aspects of an application: implementing the service provided by the application, but also making the application configurable, secure, available, ...
The separation of concerns principle is also applied to the structure of the Fractal components. In French. Fractal course and lab exercices at the University of Grenoble. Fractal for eclipse.