How to Generate Python from UML (Instant Generator Guide)?

Instant generator is the process of producing source code from class model. Designers or software architects can build a high level domain class model, then pass to programmer to perform more lower-level system or application modeling and eventually generate source code from implementation model. This chain makes building software faster and cheaper. In this chapter, we will go through the instant generation of Python. To generate code by instant generator:

  1. Select Tools > Code > Instant Generator from the toolbar.
  2. In the Instant Generator window, select Python as the Language.
  3. Fill in the Output Path, which is the directory where you want the code to generate to.
  4. Select the classes to generate code. In the Diagrams tab, you can select the diagrams to generate code for classes in the selected diagrams. Alternatively, open the Model Elements tab and select the classes to generate code.
    Selecting classes to generate code
    Selecting classes to generate code
  5. Optionally configure the generator options. Read the section below for a description of options.
  6. Click Generate to generate code.

Overview of Instant Generator

Overview of instant generator window
Overview of instant generator window
No. NameDescription
1 Language The programming language to generate.
2 Model element tree A list of packages and classes that can be selected for code generation. You must select classes for code generation.
3 General options Some of the common configurable options are shown here. You can configure them in advanced options.
4 Output path The folder where you want the code files to be generated.
5 Template directory Template governs how code will be generated from model to code. You can customize the template to suit your needs, such as to print company specific headers to each code file. If you want to use your own template, provide the template directory here. If you want to keep using the build in template, leave this option unchanged to let Visual Paradigm generate with build in template. To learn more about customization, read the final chapter of this part.
6 Advanced options Click this button to configure any options related to code generation in a new window.
7 Prompt to confirm overwrite file If a code file instant generator going to generate is already exist, by checking this option you will be asked whether to overwrite that file or not. If you uncheck this option, it will help you to overwrite the existing file automatically.
8 Output pane Any warning, error or progress about generation will be printed here.
9 Open output folder Open the output path with system browser.
10 Preview Click to preview the code content. It is just a preview and code will not be generated to the output path by previewing.
11 Generate Click to start generation.
12 Close Click to close the instant generator.
Description of instant generator window

Generator options

On the Instant Generator window you can configure some of the common code options at the right of window. You can also configure the advanced options for more detailed settings by clicking the Advanced Options... button.

Advanced Options window
Advanced Options window

Below is a description of available options.

Option Description
The encoding of source file.
Installation path The installation path of Python.
Attribute prefix The text to append to attribute name as prefix.
Parameter prefix The text to append to parameter name as prefix.
Allow From Linked Project Check to generate also classes in referenced project.
Indentation Character(s) being used for indentation. Default is Tab.
Generate unnamed attribute

When two classes are associated, checking this option will generate attributes in both classes with each other as type. When unchecked, attributes will not be generated to both of them.

Unnamed attribute Pattern will be applied when generating name for those attribute without name.
Invalid char replacement Invalid char refers to characters that will result in a compile error when compiling code. This option is for replacing those invalid characters by given one.
Generate association operations If you check this box, when a role is selected to provide setter/getter, the corresponding operation(s) will be generated for the role's attribute.
Generate simple collection operations

Whether or not to generate setter and getter for accessing attribute of associated class, when getter and setter are checked.

Generate additional collection operations

Whether or not to generate add, remove and to methods for accessing attribute of associated class, when getter and setter are checked.

Constructor Select the constructor to use
Python Version Generate code in a specific standard of Python.
A description of advanced options

Related Resources

The following resources may help you to learn more about the topic discussed in this page.

11. Instant Generator for XML schema file Table of Contents 13. Instant Generator for Objective-C source code

We use cookies to offer you a better experience. By visiting our website, you agree to the use of cookies as described in our Cookie Policy.OK