Comparison of code generation tools
{{Short description|None}}
{{More citations needed|date=February 2015}}
{{Use dmy dates|date=June 2022}}
List of tools
class="wikitable sortable" |
Product
! Creator ! Platform ! First public release ! Latest stable version ! Date of the latest stable version |
---|
Acceleo
|Obeo |cross-platform (Java / Eclipse) |2006 |3.7.7 | 2018-12-04 |
actifsource
|actifsource GmbH |cross-platform (Java / Eclipse) | |10.12.0 |2021-02-22 |
DMS Software Reengineering Toolkit
| Semantic Designs | Windows | 2001 | 2.0 | |
DRAKON
|Stepan Mitkin |cross-platform (Tcl/Tk) |2011 |1.27 | 2016-03-10 |Free |
GeneXus
| GeneXus | Cross Platform (multiple) | 1991 | v17 | |
Genshi (templating language)
| Edgewall Software | cross-platform (Python) | 2006-08-03 | 0.5.1 | 2008-07-09 | |
Jinja (Template engine)
| Pocoo team | cross-platform (Python) | | 2.1.1 | | BSD |
Kid (templating language)
| Ryan Tomayko | cross-platform (Python) | | 0.9.6 | 2006-12-20 | |
Mako
| Michael Bayer | cross-platform (Python) | | 1.1.2 |2020-03-01 |
MATLAB
|Windows, macOS, Linux |1984 |9.5 | 2018-09-12 |
M-Power
| mrc | cross-platform (Java) | 2004 | | |
Microsoft Visual Studio LightSwitch
| Windows | 2011 | | 2011-07-26 |
OpenMDX
| | cross-platform (Java) | 2004-01-28 | 2.4 | 2009-03-26 | BSD |
Scriptcase
|Scriptcase Corp. |PHP Unix, Linux, Windows, iOS |2000 |9.7 | 2022-04-13 |
T4
| Windows | 2005 | | 2010 |
Umple
| cross-platform (Java) | 2010 | 1.35.0 | 2024-10-11 |
Velocity apache
| cross-platform (Java) | | 1.6.2 | 2009-03-19 | Apache License 2.0 |
WaveMaker
|cross platform (aPaaS) |2003 |10.0.3 | |
Technical features
class="wikitable sortable" |
Name
! Implementation Language ! Typical input ! Other input ! Typical output |
---|
Acceleo
| Java | Active | Tier | User-defined EMF based models (UML, Ecore, user defined metamodels) | Any EMF based input (Xtext DSLs, GMF graphical models, etc.) | Any textual language. |
actifsource
| Java | Active | Tier | User-defined Models | Import from UML, Ecore. | Any textual language. |
DMS Software Reengineering Toolkit
| Several code generation DSLs (attribute grammars, tree patterns, source-to-source rewrites) | Active | DSLs represented as abstract syntax trees | DSL instance | Well-formed output language code fragments | Any programming language (proven for C, C++, Java, C#, PHP, COBOL) |
gSOAP
| C / C++ | | | WSDL specifications | | C / C++ code that can be used to communicate with WebServices. XML with the definitions obtained. |
Microsoft Visual Studio LightSwitch
| C# / VB.NET | Active | Tier | | Complete Silverlight application (Desktop or Web) |
Pro*C
| | | Inline | SQL in C | | C |
Scriptcase
|PHP, JavaScript |Active |Tier |Complete application (Web/Mobile) and build or use the database schema |PHP, HTML, JavaScript, Ajax, |Full Web application ready to use (PHP and Javascript) with Interface layer, service layer, PHP, CSS. etc. and Database scripts to apply. |
Spring Roo
| Java | Active | Tier | Java and automatically introspected project metadata | Shell commands | Java (Full Web Application including Java source, AspectJ source, XML, JSP, Spring application contexts, build tools, property files, etc.) |
T4
| | Passive | | | Any text format such as XML, XAML, C# files or just plain text files. |
Umple
| Umple, Java, Javascript, PHP | Active | Tier | Umple code embedding one or more of Java, Python, C++, PHP or Ruby | Pure Umple code describing associations, patterns, state machines, etc. | Java, Python, C++, PHP, Ruby, ECcore, Umlet, Yuml, Textuml, JSON, Papyrus XMI, USE, NuXMV, Alloy |
Velocity apache
| Java | Tier | Templates | Java driver code | Any text |
Yii2 Gii
| PHP | Active | Tier | Database schema, user input, source code | | Skeleton application, CRUD applications |
References
{{Reflist}}
{{DEFAULTSORT:Code Generation Tools, Comparison Of}}