7. Glossary
This glossary is still under construction
- Angular library
A library developed by MetaFactory containing code instructions (patterns) and snippets for generation of front-ends written in Angular.
- Attribute
The definition of the property of an object, stating its name and datatype.
- Buildset
The definition of a collection of files that will be generated when the buildset is run.
- Code Instruction
Formerly known as ‘Pattern’. A set of instructions for the generation process.
A Code Instruction is an abstract version of your application code, using an xml element structure to define java classes, methods, class/object fields and so on. The abstract code is converted to real source code during the generation process.
- DTO
Data Transfer Object
- External library
An external library is a means by which patterns and snippets may be shared between different MetaFactory projects. It can be used, for example, to make a library with patterns for web applications and a library with patterns and snippets for Swing applications.
- Feature
Functionality that is realized by a combination of several Code Instructions.
- Frame Component
- Hook
A hook is a snippet that is project dependent. When a hook is called by (a snippet in) a Code Instruction and the hook exists in the directory for project-dependent snippets, it is executed.
In general a hook is used to modify the final output of the pattern by adding or replacing some statements.
- Map
A collection of properties (key-value combinations).
- Metadata
Metadata are switches or data that control the generation proces of Patterns. Technically speaking, Metadata are properties (key-value combinations) and are implemented as ‘metadata’ in the Model. They can have any name or data-type.
- Metafactory.xml
File name. Often used for the project configuration file.
- MetaModel
General name for the ‘Enriched Data Model’. There is always one MetaModel file in a project called metamodel.xml
MetaModel in the MetaFactory Project Structure.
- Metaprogramming
Metaprogramming is a programming technique in which computer programs have the ability to treat other programs as their data. It means that a program can be designed to read, generate, analyze or transform other programs, and even modify itself while running.
https://en.wikipedia.org/wiki/Metaprogramming
MetaFactory uses this term as a synonym for Building a Code Instruction.
- Object
Analogous to an entity in a data model.
- Package
- Pattern
Refers to a recurring piece of program code that can be considered to be generic.
In former times at MetaFactory used for what we now call a Code Instruction.
- Property
A key-value combination.
Properties can be defined at every level in a Model (as Metadata) and in Code Instructions. There are functions available to search for properties and read their values. This offers an enormous flexibility.
The drawback is that because there are many ways to use these properties, things can become quite complicated. So using properties asks for discipline and adherence to ‘Best Practices’.
- Property File
- Snippet
A snippet is a piece of code that enriches XML with real programming features. Besides the usual stuff like variables, conditions, loops, et cetera, there is an huge library of functions available for snippets.
MetaFactory supports Freemarker (recommended) and Velocity.
- The “Metafactory” context object
- Tool
- YAML
YAML (a recursive acronym for “YAML Ain’t Markup Language”) is a human-readable data-serialization language. It is commonly used for configuration files and in applications where data is being stored or transmitted.