In addition to visual, drag-and-drop UI design in MobileTogether, defining app behavior is a highly visual process. Altova pioneered the ActionTrees programming language in MobileTogether to help users build low-code apps fast – without sacrificing the native functionality and sophistication that end-users expect.
ActionTrees allow developers and non-developers alike to visually define the logic of mobile apps and enterprise solutions by arranging actions in a tree-like structure. ActionTrees provide robust and flexible tools to build apps and enterprise solutions that can connect to databases and other data sources, perform computations, manage data, and more. This approach provides a clear and intuitive way to design workflows and automate processes without the need for traditional coding.
This visual programming paradigm is particularly beneficial for building complex applications quickly, as it simplifies the development process by providing a drag-and-drop interface for defining both business logic and event handlers.
Each ActionTree consists of a series of actions that are executed in a sequence or conditionally, based on developer-defined criteria. To create an ActionTree, simply drag any of the available actions into the tree control in the center pane of the ActionTree Editor to define its behavior and combine it with other actions.
The available control-flow options include: loops, switch statements, and If-Then-Else conditions, as well as Try/Catch/Throw exception handling.
Each ActionTree you define can be saved as an ActionGroup (shown in the right-hand pane above). An ActionGroup then becomes a function that can be reused as needed, making it easy to streamline repetitive tasks.
XPath and XQuery are used for processing and manipulating data in ActionTrees, and MobileTogether includes a powerful expression builder and evaluator that makes it easy to build and debug these expressions.
XPath/XQuery provide unparalleled flexibility for selecting and manipulating hierarchical as well as tabular data structures. Extensive function libraries make it possible to build sophisticated apps and enterprise solutions in a straightforward way. A declarative programming language, XQuery gives the developer the ability to define complex data processing logic in an elegant and concise manner.
The unique XPath/XQuery editing window includes:
If you need a refresher on these well-known, standards-based query languages, check out our free XPath training and XQuery tutorial for users with any level of experience.
MobileTogether supports an ever-growing collection of actions for defining complex yet efficient app behavior. Below is a short summary of the categories and types of actions.
MobileTogether also includes a built-in app simulator for testing on all platforms during development, as well as an integrated debugger for troubleshooting XPath/XQuery and ActionTree behavior.
ActionTrees offer a suite of actions to manage and update data efficiently. These actions are essential for applications that require dynamic data handling and transformation.
These actions include appending, deleting, inserting, replacing, and updating nodes within an XML or database structure.
These actions manage the flow of execution within an ActionTree, allowing developers to define complex logic and decision-making processes:
These actions are responsible for initiating, controlling, and managing the execution of tasks within an application:
ActionTrees can also control and modify user interactions, allowing developers to create interactive and dynamic apps:
Database actions are vital for applications that require persistent data storage and retrieval.
These actions allow integration with external web services, enabling applications to consume data from or send data to third-party APIs.
A key advantage of the ActionTrees visual programming language is its ability to support cross-platform development for mobile and desktop devices. This means that you can design and implement actions once, and they will work seamlessly across phones, tablets, laptops, and desktop computers running iOS, Android, and Windows. An HTML5 client is also available for accessing apps in a browser. This streamlines the development process, reducing the need for platform-specific coding and ensuring consistent, native behavior across all devices.