Pattern By Example
PBE - Pattern By Example: Reuse - The Easy Way! Generative Programming with Adaptive Patterns Pattern at all levels, from architectural pattern to design pattern up to code pattern, are decisive parts of the modern object-oriented software development when it comes to intensify efficiency and quality equally significant. Without the usage of a tool, that supports the deployment of patterns like these in an active manner, it sill doesn't work very effective. Too much is restricted by the susceptible, manual copying and pasting of templates and an automated adaptation of altered patterns isn't possible at all. If the support with the usage of pattern can be considered of having been little, it was even less with the development of patterns. Both tasks are solved by the innovative "Pattern By Example" principle (PBE) in an amazingly simple manner. Pattern Based Application Development PBE realises a development technique that is based on examples. Proven solutions are successively transferred into automatically reusable patterns. They can also become further developed likewise in a successive manner. With it, the intuitive working-method of "copy and adapt" is formalised, automated and optimised by PBE. Within PBE, pattern definitions are being created, parameterised by simple marks and being exported into any requested target languages at the flick of a switch. PBE provides the option of creating patterns from any kinds of code fragments, storing the respective definition and reusing it. For example, while working in a conventional way, Design Patterns (well-known from literature), which exist as theoretically concepts solely, will be implemented in the respective context anew repetitively. Using PBE, they will be implemented as a pattern definition only once. Afterwards they can be expanded for various programming languages and program contexts. Adaptive Pattern Realise Context Dependencies Beside the definition of variable elements, PBE enables the specification of relationships between code fragments: Dependencies of embedded variable components, common conditions and constraints for several, even not adjacent code fragments such as selections and iterations for entire code sections can be declared as well. Thus, the pattern can be adapted to most different contexts. The parameterisation with optional values ensures a simple usage even of extended pattern definitions.