User Tools

Site Tools


start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
start [2015/10/13 11:06]
deva
start [2018/10/10 13:14] (current)
djnemeth
Line 1: Line 1:
-===== About txtUML ​=====+==== About txtUML ====
  
-The name //txtUML// stands for **t**extual,​ **e**xecutable ​and **t**ranslatable **UML**. It is an open source project with the goal to make model driven development easier.+The name //txtUML// stands for **t**extual, ​e**x**ecutable ​and **t**ranslatable **UML**. It is an [[https://​github.com/​ELTE-Soft/​txtUML/​|open source]] project with the goal to make model driven development easier. Look into [[https://​www.youtube.com/​watch?​v=LhcdAiFcRzw|this video]] for a quick intro.
  
-==== Textual ​====+=== Textual ===
  
 Experience shows that graphical diagrams are valuable for understanding software. On the other hand, writing software in text is usually far more efficient than drawing diagrams in a modeling IDE. The txtUML project aims at combining the advantages of these two approaches: creating models textually and still have possibility to visualize it on graphical diagrams. Experience shows that graphical diagrams are valuable for understanding software. On the other hand, writing software in text is usually far more efficient than drawing diagrams in a modeling IDE. The txtUML project aims at combining the advantages of these two approaches: creating models textually and still have possibility to visualize it on graphical diagrams.
  
 txtUML models can be written using two different syntaxes: txtUML models can be written using two different syntaxes:
-  * //XtxtUML// is a custom textual syntax, designed to be short and clean. You have to learn new syntax in this case, but the models will be shorter and more readable.+  * //XtxtUML// is a custom textual syntax, designed to be short and clean. You have to learn new syntax in this case, but the models will be shorter and more readable. This syntax has been introduced in 0.2.0 version of txtUML.
   * //JtxtUML// is a Java library for defining the models. In this case the model is a Java program. Java programmers do not need to learn new syntax in this case, but the models will be slightly longer and less readable.   * //JtxtUML// is a Java library for defining the models. In this case the model is a Java program. Java programmers do not need to learn new syntax in this case, but the models will be slightly longer and less readable.
 In both cases, these textual models can be edited, searched, version controlled, refactored as any other program. In both cases, these textual models can be edited, searched, version controlled, refactored as any other program.
  
-==== Executable ​====+=== Executable ===
  
 UML is mostly used to informally specify the architecture of software, but it is capable to do much more. Executable models specify all aspects of software from components and classes to state machines and activities. They can be executed, debugged and tested independently of the target platform where the software will finally work. UML is mostly used to informally specify the architecture of software, but it is capable to do much more. Executable models specify all aspects of software from components and classes to state machines and activities. They can be executed, debugged and tested independently of the target platform where the software will finally work.
Line 18: Line 18:
 The XtxtUML syntax is on the fly translated to the JtxtUML syntax in Eclipse, therefore all txtUML programs are, basically, Java programs. This makes it possible to run, debug and test them using the standard Java runtime environments,​ debuggers and test frameworks. In addition, modeling-specific debugging features, such as animated state machines, are also available. The XtxtUML syntax is on the fly translated to the JtxtUML syntax in Eclipse, therefore all txtUML programs are, basically, Java programs. This makes it possible to run, debug and test them using the standard Java runtime environments,​ debuggers and test frameworks. In addition, modeling-specific debugging features, such as animated state machines, are also available.
  
-==== Translatable ​====+=== Translatable ===
  
-Model compilers translate the abstract models to programs in an implementation language (like C, C++, Java etc.) and are designed to work in a specific ​runtime ​environment (hardware, operating system, specific libraries). Our project includes a generic C++ model compiler that can be used as is, or as a basis to create a new compilers for different languages and special platforms.+Model compilers translate the abstract models to programs in an implementation language (like C, C++, Java etc.), targeting ​a specific ​run-time ​environment (hardware, operating system, specific libraries). Our project includes a generic C++ model compiler that can be used as is, or as a basis to create a new compilers for different languages and special platforms.
  
start.1444727214.txt.gz ยท Last modified: 2015/10/13 11:06 by deva