Cross-Platform Object Model

The programming languages within your system do not need to follow a common object model because the tools included with the Studio are providing the translation from platform-independent declarations to language specific syntax, even if the languages follow entirely different semantics (for example, between value style languages like C++ and reference style languages like Java and .NET).

FreeStyle also helps to bring the benefits of best-of-breed capabilities and design patterns to programming languages that do not support them directly, including

  • Reference style programming
  • Component interface programming
  • Serialization (multiple styles of XML and binary formats, custom formats)
  • Database (schemas and adapters reflecting object relationships)
  • Templates and generics
  • Polymorphic structures
  • Properties
  • Strongly typed enums with conversion to and from strings
  • Delegates

When the target language natively supports a particular capability or design pattern, the mapping from cross-platform definition to the source code is straightforward. When it does not, our  tools generate all of the code that is required to add the desired feature using the capabilities of the target language. For example, in languages that do not support templates, template instantiation is generated by CompatibL. Using CompatibL in such situations brings tremendous savings in development time and effort.

Copyright © 2006 CompatibL