| Perbandingan -- code generation toolsThis article compares variable metamodel code generation tools[clarification needed]. Fixed metamodel code generation tools, such as UML tools, are excluded (see Daftar/Tabel -- UML tools). Many of the links on this page are broken or removed since the descriptions of these tools do not meet the standards of significance for Wikipedia. Technical|
CodeFluent Entities | C# | Active | Mixed | User-defined models, Database schema | Templates | .NET classes, Persistence layers (Microsoft SQL Server, Oracle, PostgreSQL, MySQL), WCF Services, ASP .NET websites... | CodeSmith Generator | C#, VB.NET, JavaScript | Active | Mixed | Database schema (ADOX, DB2 zOS, ISeries, MySQL, Oracle, Postgre, SQL Anywhere, SQL Compact, SQL Server, SQLite, VistaDB), C# or VB.NET source code, Any meta data source.. E.G., Web Services, SharePoint, UML, XSD, XML, DBML, EDMX, JSON, HBM, HTML and more... | Templates | Any textual output such as C#, VB.NET, C/C++, XML, SQL, JSON, JavaScript, HTML, or any other plain text format. | ZumCoder/MDA | PHP | Passive[11] | Mixed | XSD, DBML, Database Schema(Mysql,SqlServer,PostegreSQL,SQ Lite),HTML forms,PHP class and (ZML "ZumCoder Model Language", a XML define structure | Templates | Any textual language, depends upon your template code, you can write your own template to outputs the language of your preference | 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. | Accelerator | C# | Active | Tier | Database schema | XML Schema, Templates and configuration tables | C#, WPF, Silverlight, ASP.NET, WCF, WebServices(complete application) | GenerateXY | Java | Active | Tier | User-defined Models | XML, CSV, Java, ... (extensible) | Any textual language, predefined modules for Java, HTML, XML | actifsource | Java | Active | Tier | User-defined Models | Import from UML, Ecore. | Any textual language. | Agile Platform | .Net | Active | Tier | User defined models based on the OutSystems visual modeling language | Java, C#, Javascript | ASP.Net and JEE | Apeel PHP Code Generator Pro | Delphi | Passive | Tier | Database schema | PHP, HTML, CSS | Full Application – PHP, CSS, Apeel Open Source Framework. | AtomWeaver | C++, Lua | Active | Tier | Tree models built using a cooperative template system, based on the ABSE modeling approach | Code in any language | Any textual language | Code4Green | C#, VB.net, ASP.net, SharePoint, SQL, JAVA, classical ASP, HTML, XML | Active[12] | Tier | Code4Green - an online ultimate code generation tool with a green cause of plantation of trees on each 10,000 LOC | Code in C#, VB.net, ASP.net, SharePoint, SQL, JAVA, classical ASP, HTML, XML | Output determined by the selected language type. It is a plain text. | GNU AutoGen | C | Active | Tier | Autogen definitions (lists of key-value pairs or hierarchical data arranged like C structs), Autogen templates (fixed output plus inline macros for conditional or repetitive emission of code blocks or evaluation of Bourne shell or Scheme expressions) | XML, CGI data | Output determined by template (any language or even plain text); additional support for emitting header guards, certain licenses, option parsers, and finite state machines in C | Cog | Python | Active[13] | Mixed | Any code | Java C# C++ C Perl Python Ruby TCL Javascript Fortran Lisp Scheme Cobol XSLT JSP PHP Yacc SQL XML System Configuration Files | CodeGenerator360 | C# | Active | Tier | Database Schema | XML Schema | Stored Procedures, .NET DAL, C# ASP.NET Pages, Visual Studio 2010 Solution and Project Files | CodeOnTime | C# | Active | | Database Tables | Templates and Various XML configuration tables | C# ASP.NET | C++ Middleware Writer | C++ | Active | | DSL instance / Middle file | Include files | C++ marshalling code | 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. | Iron Speed Designer | C# / VB.NET | Active | Tier | Database schema | CSS | ASP.NET (Full application, including C# code, VB code, XML, Stored Procedures, etc.) | Jostraca | Java | Active [14] | Tier | Any code | Java | Any code; Java, JSP | JCodeBox | Java | | Tier | Java | | Java (Full Web Application) | Microsoft Visual Studio LightSwitch | C# / VB.NET | Active | Tier | Database schema | | Complete Silverlight application (Desktop or Web) | MyGeneration | | | | | | .NET | OMS.Ice – T4 Text Template Generator | C# | Active | Mixed | T4 text template, C# or VB | C# partial classes | Any textual output such as C#, VB, C/C++, XML, or any other plain text format | PHPRunner | PHP/ASP/C#/VB.NET | Active | Tier | Database schema | PHP, ASPX, HTML, CSS, | PHP, ASP, ASP.NET (Full Web application, including C#, VB.NET, PHP, ASP code, HTML, Javascript, CSS, etc.) | Pro*C | | | Inline | SQL in C | | C | 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 | | T4 Template/Text File | | Any text format such as XML, XAML, C# files or just plain text files. | Umple | Java | Active | Tier | Java, PHP, Ruby with embedded Umple code | Pure Umple code describing associations, patterns, state machines etc. | Java, PHP, Ruby, ECcore, Umlet, Yuml, Textuml, JSON, Papyrus XMI | Appsroller Web Form Generator | Javascript | Active | Web Tier | Any code | Javascript | | Velocity apache | Java | Passive [15] | Tier | Any code | Java | Java | XDocLet | | Active[16] | Munger | JavaDoc | | EJB support beans | XACT X4MR | C | Passive | | Language_A Source, Language_A-to-Language_B Transform Rules | CHILL, CMS2, FORTRAN, COBOL, JOVIAL, PASCAL, PL/1, PLM86 | Compilable Language_B Source; Application_A Documentation; Application_B Documentation |
References- ^ GNU/Linux, BSD, Apple's OS/X, SVR4-5, HPUX, SCO OpenServer and Solaris. It is expected that it will work on any reasonably modern UNIX system with an ANSI-compliant C compiler. It also runs under WinNT, provided you have CygWin and Guile loaded.
- ^ Great tutorial
- ^ Version History
- ^ Welcome | Jinja2 (The Python Template Engine)
- ^ http://www.kid-templating.org
- ^ Swertz, Morris A.; de Brock, E. O. (Bert); van Hijum, Sacha A. F. T.; de Jong, Anne; Buist, Girbe; Baerends, Richard J. S.; Kok, Jan; Kuipers, Oscar P. et al. (2004). "Molecular Genetics Information System (MOLGENIS): alternatives in developing local experimental genomics databases". Bioinformatics 20 (13): 2075–83. doi:10.1093/bioinformatics/bth206. PMID 15059831.
- ^ Very fast in-process T4 text template generator
- ^ Apache Velocity Site – The Apache Velocity Project
- ^ "Active generators build code that you should not modify or should only modify in specifically marked sections which are held safe during a re-generation cycle... Passive generators build code once and then it’s up to you to maintain the code long-run. "
- ^ Type based on input: Code munger, Inline code expander, Mixed code generator, Partial class generator, Tier generator
- ^ [1]
- ^ [2]
- ^ The output area for each generator (between the]]] and [[[end]]] lines) is deleted, and the output of running the Python code is inserted in its place.
- ^ Jostraca should be used primarily for active code generation.
- ^ Open source tools are available that make the task of developing passive code generators all but trivial. One such offering is Velocity from the Apache Software Foundation.
- ^ MockDoclet is the base of XDocLet"MockDoclet is an active code generation tool for automatically generating mock objects"
|
| |