# Język programowania wizualnego: ActionTrees

### Język programowania wizualnego

Twórz zaawansowane aplikacje dzięki ActionTrees- Interfejs graficzny, umożliwiający przeciąganie i upuszczanie elementów
- Logika warunkowa do obsługi złożonych zachowań
- Zaawansowane sterowanie przepływem programu
- Grupy akcji, które można wykorzystywać wielokrotnie, ułatwiają wykonywanie powtarzalnych zadań

- Wsparcie dla XPath/XQuery do manipulacji danymi
- Debugger przeznaczony do zastosowań biznesowych
- Napisz raz, wdrażaj wszędzie
- Ta firma projektuje i tworzy aplikacje na systemy iOS, Android i Windows

## Rozwiązania typu low-code bez kompromisów

[Tworzenie aplikacji przy użyciu platformy MobileTogether ActionTrees, która umożliwia szybkie tworzenie aplikacji z minimalnym użyciem kodu](https://www.altova.com/images/low-code-app-dev.png)

Oprócz wizualnego projektowania interfejsu użytkownika w MobileTogether, który opiera się na przeciąganiu i upuszczaniu, definiowanie zachowania aplikacji jest procesem bardzo wizualnym. Firma Altova stworzyła język programowania ActionTrees w MobileTogether, aby pomóc użytkownikom szybko tworzyć aplikacje o niskim poziomie kodowania – bez rezygnacji z natywnych funkcji i zaawansowania, których użytkownicy końcowi oczekują.

ActionTrees umożliwiają programistom i osobom nieposiadającym wiedzy programistycznej wizualne definiowanie logiki aplikacji mobilnych i rozwiązań biznesowych poprzez organizowanie akcji w strukturze przypominającej drzewo. ActionTrees oferują solidne i elastyczne narzędzia do tworzenia aplikacji i rozwiązań biznesowych, które mogą łączyć się z bazami danych i innymi źródłami danych, wykonywać obliczenia, zarządzać danymi i wiele więcej. To podejście zapewnia jasny i intuicyjny sposób projektowania przepływów pracy i automatyzacji procesów, eliminując potrzebę tradycyjnego kodowania.

Ten sposób programowania, oparty na wizualizacji, jest szczególnie korzystny do szybkiego tworzenia złożonych aplikacji, ponieważ upraszcza proces tworzenia, oferując interfejs "przeciągnij i upuść" do definiowania zarówno logiki biznesowej, jak i obsługi zdarzeń.

[Język programowania wizualnego ActionTrees w środowisku MobileTogether](https://www.altova.com/images/visual-programming-language.png)

Każde drzewo akcji (ActionTree) składa się z serii akcji, które są wykonywane sekwencyjnie lub warunkowo, w zależności od kryteriów zdefiniowanych przez programistę. Aby utworzyć drzewo akcji, wystarczy przeciągnąć dowolną z dostępnych akcji do obszaru drzewa w centralnej części edytora ActionTree, aby zdefiniować jego działanie i połączyć je z innymi akcjami.

Dostępne opcje sterowania przepływem programu obejmują: pętle, instrukcje warunkowe (switch), instrukcje warunkowe typu "jeśli-to-inaczej" (if-then-else) oraz mechanizmy obsługi wyjątków (Try/Catch/Throw). 

Każdy zdefiniowany drzewo akcji można zapisać jako grupę akcji (widoczną w prawym panelu, jak pokazano powyżej). Grupa akcji staje się wówczas funkcją, którą można wielokrotnie wykorzystywać, co ułatwia automatyzację powtarzalnych zadań.

## Elastyczna manipulacja danymi za pomocą XPath/XQuery

XPath i XQuery są wykorzystywane do przetwarzania i modyfikowania danych w systemie ActionTrees, a narzędzie MobileTogether zawiera zaawansowany konstruktor i interpreter wyrażeń, które ułatwiają tworzenie i debugowanie tych wyrażeń.

XPath/XQuery oferują niezrównaną elastyczność w doborze i manipulacji zarówno hierarchicznymi, jak i tabelarycznymi strukturami danych. Rozbudowane biblioteki funkcji umożliwiają tworzenie zaawansowanych aplikacji i rozwiązań korporacyjnych w prosty sposób. Język programowania deklaratywnego, XQuery, daje programistom możliwość definiowania złożonych logik przetwarzania danych w elegancki i zwięzły sposób. 

[Wykorzystanie wyrażeń XPath i zapytań XQuery w narzędziu MobileTogether do wyboru danych](https://www.altova.com/images/xpath-xquery-data-selection.png)

Unikalne okno edycji wyrażeń XPath/XQuery zawiera:

- **Tworzenie wyrażeń za pomocą interfejsu "kliknij i wybierz"**. Dostępna jest obszerna lista operatorów, wyrażeń i wbudowanych funkcji, które można wstawić do wyrażenia, klikając dwukrotnie. Funkcje są wstawiane wraz z ich argumentami, oznaczonymi symbolami "#", co ułatwia szybkie i bezbłędne tworzenie wyrażeń.
- **Wskazówki wyświetlane po najechaniu kursorem**, które opisują poszczególne funkcje, operatory itp., dzięki czemu można mieć pewność, że wybierzesz odpowiedni element dla danego wyrażenia.
- **Ulepszone narzędzia wspomagające wprowadzanie danych,** które wyświetlają opis wbudowanych funkcji, a następnie pokazują szczegółowe informacje o funkcjach i parametrach w miarę wpisywania, co przyspiesza proces tworzenia oprogramowania i zapewnia dokładność.

Jeśli potrzebujesz odświeżyć swoją wiedzę na temat tych popularnych języków zapytań, opartych na standardach, zapraszamy do skorzystania z naszego bezpłatnego [kursu XPath](../training/xpath3.md) oraz [samouczka XQuery](../training/xquery3.md), przeznaczonego dla użytkowników na każdym poziomie zaawansowania.

## Zastosowanie ActionTrees

MobileTogether oferuje coraz większą [bibliotekę akcji](https://www.altova.com/manual/MobileTogether/mobiletogetherdesigner/mtdactions_ui.html), które pozwalają na definiowanie złożonych, a jednocześnie efektywnych zachowań aplikacji. Poniżej znajduje się krótki przegląd kategorii i typów dostępnych akcji.

MobileTogether zawiera również wbudowany symulator aplikacji, który umożliwia testowanie na wszystkich platformach podczas procesu tworzenia, a także zintegrowany debugger do rozwiązywania problemów związanych z działaniem wyrażeń XPath/XQuery oraz struktur ActionTree.

### Działania związane z manipulacją danymi {#manipulation}

ActionTrees oferują zestaw narzędzi umożliwiających efektywne zarządzanie i aktualizację danych. Te narzędzia są niezbędne dla aplikacji, które wymagają dynamicznego przetwarzania i transformacji danych.

Te działania obejmują dodawanie, usuwanie, wstawianie, zastępowanie oraz aktualizowanie elementów w strukturze XML lub bazie danych.

### Akcje sterowania przepływem {#control-flow}

Te działania kontrolują przebieg wykonywania w strukturze ActionTree, umożliwiając programistom definiowanie złożonych logik i procesów decyzyjnych

- Instrukcja warunkowa: Wykonuje zestaw akcji, jeśli określony warunek jest spełniony.
- Instrukcja warunkowa: Umożliwia wykonanie alternatywnego zestawu działań, jeśli określony warunek jest fałszywy.
- Instrukcja "switch", przypadek: Umożliwia ocenę wielu warunków, a akcje są wykonywane w zależności od dopasowanego przypadku. Jest to idealne rozwiązanie do obsługi rozgałęzień wielokierunkowych.
- Pętla: Powtarza zestaw działań, dopóki określony warunek jest spełniony, umożliwiając iterację po zbiorach danych lub wykonywanie powtarzalnych zadań.
- Break Loop: Przerywa działanie pętli przed jej naturalnym zakończeniem, jeśli spełniony zostanie określony warunek.

### Akcje wykonywane {#execution}

Te działania odpowiadają za inicjowanie, kontrolowanie i zarządzanie wykonywaniem zadań w ramach aplikacji

- Przerwanie wykonywania akcji: Zatrzymuje wykonywanie aktualnie trwającej akcji. Przydatne do obsługi błędów lub anulowania akcji przez użytkownika.
- Wykonaj natychmiast: Inicjuje wykonanie działania lub zestawu działań natychmiast, niezależnie od aktualnego kontekstu działania.
- Wykonanie rozwiązania: Umożliwia anulowanie rozwiązania, zawieszenie go (czyli uruchomienie w tle) lub ponowne uruchomienie.

### Akcje interfejsu użytkownika {#ui}

ActionTrees umożliwiają również kontrolowanie i modyfikowanie interakcji użytkownika, co pozwala programistom tworzyć interaktywne i dynamiczne aplikacje

- Wyświetl okno dialogowe: Wyświetla okno dialogowe dla użytkownika, często używane do wyświetlania powiadomień lub prośby o potwierdzenie.
- Przejdź do strony: Przenosi użytkownika do innej strony w aplikacji, umożliwiając tworzenie aplikacji wielostronicowych i przepływów pracy.
- Ustawienie właściwości elementu interfejsu: Dynamiczna zmiana właściwości elementów interfejsu użytkownika, takich jak widoczność lub styl.
- Dostęp do kalendarza: Uzyskaj dostęp do wbudowanego kalendarza w telefonie i przeglądaj/dodawaj wydarzenia.
- Dzwonienie: Bezpośrednio inicjuj połączenia telefoniczne z poziomu aplikacji.
- Wysyłanie e-maili/SMS-ów: W celu zautomatyzowania pełnych procesów biznesowych, można wysyłać e-maile oraz wiadomości SMS bezpośrednio z aplikacji.
- Otwieranie adresów URL: Można otwierać adresy URL za pomocą przeglądarki urządzenia, a także otwierać pliki za pomocą zewnętrznych aplikacji zainstalowanych na urządzeniu.
- Wyświetlanie: Wykorzystaj zaawansowane arkusze stylów oraz integrację MobileTogether z serwerem [StyleVision](../stylevision-server.md), aby przekształcić dane w dokumenty PDF, które następnie można przesłać do drukarki.
- Dostęp do kontaktów: Umożliwia dostęp do kontaktów zapisanych na urządzeniu użytkownika aplikacji.

### Akcje dotyczące bazy danych {#database}

Działania związane z bazą danych są kluczowe dla aplikacji, które wymagają trwałego przechowywania i odzyskiwania danych.

- DB Execute: Wykonuje zapytanie do bazy danych i pobiera wyniki, które następnie mogą być wykorzystane w aplikacji. 
- DB Bulk Insert: Pozwala na dodawanie dużej liczby nowych rekordów do tabeli bazy danych; jest to kluczowa funkcja w aplikacjach do wprowadzania danych. 
- Transakcje DB: Umożliwiają implementację obsługi transakcji, szczególnie podczas pracy z serwerami SQL, w tym funkcje rozpoczęcia transakcji, zatwierdzenia transakcji oraz wycofania transakcji. 

### Akcje usług internetowych {#ws}

Te funkcje umożliwiają integrację z zewnętrznymi usługami internetowymi, co pozwala aplikacjom pobierać dane z lub wysyłać dane do interfejsów API firm trzecich.

- Żądanie SOAP: Wywołuje usługę internetową opartą na protokole SOAP i przetwarza zwrócone dane, zapewniając kompatybilność ze starszymi systemami i usługami.
- Żądanie REST: Komunikacja z usługami RESTful, które są powszechnie wykorzystywane w nowoczesnych aplikacjach internetowych. 
- Uruchom zadanie FlowForce: Pozwala na uruchamianie zadań na serwerze [FlowForce](../flowforceserver.md) jako część infrastruktury backendowej Twojej aplikacji.
- MapForce Transfer: Funkcja [MapForce](../mapforce.md) Transfer umożliwia konwersję (mapowanie) jednego zestawu struktur danych na drugi. Każda struktura danych z zestawu wynikowego może zostać zapisana do pliku lub do elementu źródła strony.

## Wsparcie dla różnych platform

Kluczową zaletą języka wizualnego ActionTrees jest jego zdolność do wspierania tworzenia aplikacji działających na różnych platformach, zarówno mobilnych, jak i stacjonarnych. Oznacza to, że można zaprojektować i zaimplementować funkcje raz, a one będą działać bezproblemowo na telefonach, tabletach, laptopach i komputerach stacjonarnych, niezależnie od tego, czy działają pod systemami iOS, Android czy Windows. Dostępny jest również klient HTML5, który umożliwia korzystanie z aplikacji w przeglądarce. To upraszcza proces tworzenia, redukując potrzebę pisania kodu specyficznego dla każdej platformy i zapewniając spójne, natywne działanie na wszystkich urządzeniach.

## Obsługiwane platformy:

- Android
- iOS (system operacyjny dla urządzeń iPhone i iPad)
- Windows 10 i 11
- Przeglądarka HTML5 dla innych użytkowników

ads/feature_list.pngLista funkcji MobileTogether

READ MOREads/mt_faq.pngCzęsto zadawane pytania dotyczące MobileTogether

READ MOREads/demo_videos.pngPrezentacje wideo produktu MobileTogether

VIEW NOW
## Call to Action

[Pobierz bezpłatny program MobileTogether Designer, aby rozpocząć pracę!](download.md)
[Istniejący klienci mogą zaktualizować oprogramowanie do najnowszej wersji, korzystając z tej strony.](download.md)
[Serwer MobileTogether jest teraz dostępny.](https://shop.altova.com/MobileTogetherServer)

