Introduction to ConceptRT philosophy and ecosystem.
ConceptRT is a programming platform developed to support object-oriented and real time programming requirements. The features of ConceptRT are designed to be used in Automation and machinery domain as well as for the embedded world.
To face software development complexity, the object-oriented methodology leads to design always more flexible and agile software architectures. This way, the software is able naturally to integrate new business requirements.
The philosophy of ConceptRT is deeply inspired by object-oriented methodology. Unlike the functional programming method where data and behaviour (functions) are separated, the object approach is more consistent since data and behaviour are in the same compound. Modularity, independence and scalability can be henceforth managed directly at the object-oriented language level.
Variabilities families and combinations are usually sources of software complexity. The object-oriented methodology and language handle nicely these situations thanks to abstractions and the polymorphism mechanism of the virtual methods.
Inheritance, polymorphism and object model elegantly solve complex situations but they bring their technical challenges for the programmer:
These technical challenges are easily and almost transparently supported by ConceptRT. The full power of object-oriented methodology can then be used to make of ConceptRT a real productivity platform.
ConceptRT brings software components and features in order to:
Interact in live with the developed objects model. Check structure and set or get object properties in two clicks or simply call methods on them to test their expected behaviour.
ConceptRT is built in order to be cross-platform: an abstraction of the OS primitive gives the ability to offer the same abstraction independently of the target. This way, the development can mainly be made in a comfortable Windows context and then be tested and deployed on the final target. This can be very interesting especially for the embedded world. Moreover, the application and all the development investments are free of specific technology suppliers. See Available platforms for more details.
IO communication technology abstraction gives the ability to develop the business functionalities without depending on a specific technology. It is thus possible to change field-bus technology whenever it becomes necessary without impacting the business software layer. See Field-bus technologies for more details.
The object-oriented methodology is well recommended as soon as the application to develop contains variabilities, different working modes or some scalability requirements.
The process of modeling helps formalizing the requirements, analyzing the needs, communicating with others and validating the objectives and budget. Furthermore, it also helps to describe the software architecture through class diagrams. They are the best plans to help programmers to be more efficient: to do it well and to do it once.
ConceptRT is at its full potential when programmers implements object-oriented models that are properly designed. Agile programming shows how a class diagram is easily translated into code with ConceptRT.