General Notes
...
Warning |
---|
onCore designer is a Visual Programming Environment which makes Workflow, Microservice and Application development possible to almost everybody. As in any programming environment, it is also possible to create Workflows which are error prone, contain infinite loops or other problematic situations. If a Workflow should hang or crash, double check your implementation. If problems still persist don't hesitate to → contact us. |
General Workflow Building
- When building your workflowWorkflow, make sure you put more space between units Units than what seems necessary at first. It is almost always the case that you will have to revisit sections and add systems later.
- If you know that you will need a variable Variable in more than one place, it is advisable to create a variable Variable for it.
- If the variable Variable is only used within one workflow, use workflow variables Workflow Variables (not project variablesProject Variables)
- Use Workflow variables Variables to cover large distances between units, to avoid unnecessary cable overlapping.
- If you find yourself duplicating a system for multiple parts of your projectProject, encapsulate its functionality in a WorkflowUnitSubworkflow (using the Workflow Unit).
- When designing a WorkflowUnit Workflow Unit it is important that you expose both in- and out trigger-triggers, since workflow Workflow units will only pass variables Variables to the 'sub-workflow' on Subworkflow on a trigger tick.
- When you are done with your main workflowWorkflow, expose the trigger In. trigger outTriggers, and any variables Variables that you deem necessary. (see published ins and outs) - This will allow someone else to reuse your workflow.
- Provide necessary information about published input ports Input Ports via an annotation → see published inputs
Main Bus Design
It is best practice to layer indistinct systems Vertically, conversely, if two systems are distict from one another they are layered horizontally
...
- Annotations.
Main Bus Design
Having a well structured Workflow is crucial for larger Projects, as it severely decreases the overhead which is required to fix problems, implement changes and introduce other developers to the Workflow design. There are three "bus design" practices:
Indistinct UnitsLayer Units of the same type vertically. This decreases the width of the Workflow and still allows for good structure. | |
Distinct UnitsLayer Units (or Unit groups) horizontally. Adding Annotations is a good way to keep it structured. | |
BranchingBranching can be done by using the Workflow Unit, i.e. a group of Units is put together as a Subworkflow. Exposed Inputs and Outputs are used to send and get data to and from the Subworkflow. |