Jeśli masz już doświadczenie z klasycznym programowaniem lub inną platformą no-code/low-code, wiele koncepcji będzie znajomych.

W przeciwieństwie do innych rozwiązań no-code i low-code, AppMaster jest zbudowany z klasycznym podejściem do tworzenia aplikacji. Podstawowym elementem AppMaster jest projekt, a nie aplikacja, jak w przypadku innych platform. Projekty mogą składać się z wielu aplikacji backendowych, webowych i mobilnych. Architektura rozwiązania - klient serwer (nie monolit jak w Bubble lub podobnych platformach).

Przenosząc się z innych platform no-code, należy pamiętać, że w AppMaster tworzysz backend, web i mobile oddzielnie za pomocą różnych narzędzi platformy. Jednym z najbardziej frustrujących momentów dla takich użytkowników jest przypomnienie sobie, że trzeba tworzyć oddzielne aplikacje i budować w nich logikę.

Jak zacząć?

W przypadku większości projektów będziesz musiał zbudować backend i web lub backend i mobile lub nawet wszystkie typy aplikacji.

WAŻNE. Pamiętaj, aby zaimplementować większość logiki w aplikacji backendowej. Nigdy nie umieszczaj ważnej logiki w aplikacjach internetowych lub mobilnych, gdzie nie masz kontroli. Frontend służy wyłącznie do wizualizacji danych i zbierania informacji od użytkownika.

Najprostszym sposobem jest rozpoczęcie od stworzenia aplikacji backendowej.

APLIKACJE BACKENDOWE

BackendKrok 1. Zdefiniuj modele danych w kreatorze modeli danych backendu. Możesz myśleć o każdym modelu jako o tabeli w bazie danych SQL (z relacjami). W AppMaster modele danych są używane nie tylko do definiowania podstawowych tabel bazy danych, ale także jako deklaracja struktury w całym projekcie. Na przykład, jeśli logika używa modelu danych "Użytkownik", można mieć pewność, że każda struktura tego typu będzie miała ten sam zestaw pól.

Kliknij prawym przyciskiem myszy na obszar roboczy kreatora modeli danych aby utworzyć nowy model i przeciągnij z jednego obramowania modelu do drugiego aby utworzyć relację. Kliknij na pole relacji lub modelu aby je zmodyfikować.

Należy uważać na właściwości pól, takie jak Unique, Not NULL lub Index: jeśli zastosujesz zasady NOT NULL lub Unique do istniejącej bazy danych z pustymi lub zduplikowanymi wartościami, migracja schematu DB ostatecznie zakończy się niepowodzeniem.

Backend Krok 2. Utwórz procesy biznesowe dla swojej aplikacji. Proces biznesowy (BP) w kategoriach platformy AppMaster to po prostu unikalny termin dla funkcji w klasycznym programowaniu.

Każdy backend BP ma 2 obowiązkowe bloki: Start i End. Jeśli chcesz przekazać dane do BP, musisz zdefiniować zmienne w bloku Start (będą działać jak argumenty w funkcjach z klasycznego programowania) i połączyć je z blokami wewnątrz BP.

Aby zwrócić dane z BP, możesz dodać zmienne do bloku End (podobnie jak return w funkcjach klasycznego programowania).

Istnieją 2 rodzaje połączeń między blokami BP:

  • jednolita niebieska linia strzałki zwana Flow Connections i definiuje kolejność wykonywania bloków (który blok powinien być wykonany jako następny)
  • cienkie linie w różnych kolorach zwane Variable Connections, które definiują powiązania danych (skąd pobrać dane - połączenie danych między blokami BP). Każdy kolor oznacza inny typ danych

Zazwyczaj miejsca w blokach BP dla połączeń Flow lub Variable nazywane są konektorami. Wszystkie konektory po lewej stronie bloku to In Connectors (odbierają Flow lub dane), a po prawej stronie to Out Connectors (przekazują Flow lub dane dalej).

Aby utworzyć połączenie, należy przeciągnąć z jednego łącznika do drugiego (przeciągnij między blokami, które chcesz połączyć).

Bez względu na to, z której strony rozpoczniesz przeciąganie, utworzy ono połączenie.

Edytor BP automatycznie sprawdza typy danych dla zmiennych połączeń i nie pozwoli na połączenie, jeśli typy danych nie są identyczne, a także zapobiegnie pętlom lub złym połączeniom.

Możesz wywołać jeden BP z innego - po prostu przeciągnij i upuść odpowiedni blok z lewego panelu. Często używamy tego podejścia, aby zminimalizować złożoność logiki i ponownie wykorzystać tę samą logikę wiele razy w projekcie.

Istnieją 2 rodzaje zmiennych w aplikacjach backendowych, które można umieścić w BP w celu tymczasowego przechowywania danych:

  • Zmienne lokalne - do przechowywania danych podczas cyklu życia bieżącego BP (najbardziej wydajne, tylko w pamięci).
  • Zmienne globalne - będą przechowywać dane podczas cyklu życia aplikacji backendowej (również tylko w pamięci, zostaną zresetowane po ponownym uruchomieniu aplikacji).

Zanim będziesz mógł użyć zmiennej globalnej, przeciągając ją z lewego panelu edytora BP, musisz ją utworzyć za pomocą sekcji logiki backendu.

Jeśli twój BP musi być wywoływany z zewnętrznego źródła poprzez API (z twojej strony internetowej, mobilnej, używając postman/curl, z zewnętrznego systemu), musisz dołączyć BP do punktu końcowego.

Krok 3 backendu. Tworzenie punktów końcowych. W AppMaster używamy tego samego klasycznego podejścia REST API dla punktów końcowych. Chociaż AppMaster obsługuje nie tylko punkty końcowe REST API, ale także punkty końcowe WebHooks i WSS, skupimy się na pierwszym typie.

Podczas tworzenia punktów końcowych należy przestrzegać standardu REST API w zakresie metod (GET, POST, PUT, PATCH, DELETE), ładunków (użyj JSON) i adresów URL (bez znaków innych niż ASCII, bez spacji, zaczynających się i kończących ukośnikiem).

Proces tworzenia punktów końcowych jest bardzo prosty i nieskomplikowany: wybierz BP, zdefiniuj adres URL i metodę REST, a jeśli potrzebujesz autoryzacji na tym punkcie końcowym - sprawdź ustawienia oprogramowania pośredniczącego.

Gdy modele danych, procesy biznesowe i punkty końcowe są gotowe, nadszedł czas na publikację - naciśnij przycisk publikacji! Zwykle w mniej niż 30 sekund platforma AppMaster pobierze wszystkie plany (tak, w rzeczywistości wszystko, co zrobiłeś, to plany dla przyszłego oprogramowania), wygeneruje kod źródłowy, skompiluje, spakuje do obrazu docker i wdroży w chmurze AppMaster. Po zakończeniu procesu publikacji można otworzyć dokumentację REST API (OpenAPI/Swagger) i przetestować punkty końcowe za pomocą wbudowanych żądań Swagger lub za pomocą narzędzi innych firm, takich jak Postman lub Insomnia.

WAŻNE. Jeśli korzystasz z subskrypcji Learn & Explore, nasz demon oszczędzania zasobów zatrzyma kontener aplikacji po 30 minutach bezczynności w Studio. Aby uruchomić ponownie - kliknij przełącznik Deploy Plan lub opublikuj ponownie.

APLIKACJE INTERNETOWE

Po prawidłowym zaplanowaniu i utworzeniu backendu nadszedł czas, aby przejść do frontendu. Zaczniemy od aplikacji webowej.

WebAppKrok 1. Utwórz aplikację internetową, jeśli nie masz jeszcze takiej w projekcie. Obecnie mamy 2 typy projektantów aplikacji internetowych: aktualny i nowy (w wersji beta). Główną różnicą jest ilość dostosowań. Obecna generacja WebApp Designer ma bardzo ograniczone możliwości dostosowywania interfejsu użytkownika, ale proste i łatwe do zbudowania standardowe interfejsy paneli administracyjnych i portali klientów. Nowy (obecnie w wersji beta) ma pełną personalizację wyglądu i wypełnienia interfejsu użytkownika - podejście flexbox z układami SPA (Vue, React way). Obaj projektanci mają wbudowane procesy biznesowe, w tym wyzwalacze i kilka przydatnych bloków.

WebApp Krok 2. Rozpocznij projektowanie interfejsu użytkownika aplikacji internetowej, przeciągając i upuszczając elementy interfejsu użytkownika z górnego panelu (bieżący projektant) lub lewego panelu (nowy projektant). W przypadku niektórych elementów, które zawierają wyliczenia (takich jak tabele i listy), konieczne będzie wybranie modelu danych podczas początkowej fazy upuszczania, aby automatycznie dostosować element.

Istnieją 2 rodzaje procesów biznesowych w aplikacjach internetowych: Trigger i Standard. Wyzwalacze są dostępne dla każdego elementu interfejsu użytkownika i dla zakresu całej aplikacji (wyzwalacze aplikacji). Aby uzyskać dostęp do wyzwalacza elementu interfejsu użytkownika, wybierz element i utwórz go na karcie BP. W przeciwieństwie do standardowych BP, wyzwalacze mają wiele bloków początkowych: jeden blok dla każdego zdarzenia i brak bloku końcowego. Ponieważ wyzwalacze nigdy nie zwracają żadnych wartości, nie ma potrzeby stosowania bloków End. Nadal można tworzyć standardowe procesy biznesowe w aplikacjach internetowych, ale jedynym sposobem na ich wykonanie jest wywołanie ich z wyzwalaczy. To dobre podejście, aby przenieść często używaną logikę do standardowych webowych BP i po prostu wywoływać ją z wyzwalaczy.

WAŻNE. Należy pamiętać, że backendowe BP będą działać wewnątrz aplikacji backendowych, a webowe BP będą działać w przeglądarkach użytkowników, a zminimalizowanie obciążenia webowego będzie korzystne dla doświadczenia użytkownika.

Istnieje kilka bardzo ważnych wyzwalaczy na poziomie aplikacji. Na przykład App onLaunch uruchamia się, gdy aplikacja w przeglądarce właśnie się uruchomiła. To najlepsze miejsce do sprawdzenia, czy użytkownik jest uwierzytelniony, a jeśli nie, przekierowania na właściwą stronę (jeśli w ogóle potrzebujesz uwierzytelnienia).

Nie zapomnij zapisać schematu aplikacji internetowej i opublikować projektu, aby zobaczyć zmiany.

APLIKACJE MOBILNE

Jeśli chcesz stworzyć aplikację mobilną, proces jest taki sam jak w przypadku aplikacji internetowej: utwórz ekrany, umieść elementy interfejsu użytkownika, utwórz wyzwalacze elementów interfejsu użytkownika, dostosuj wyzwalacz App onLaunch i jesteś gotowy do pracy. Nie ma podglądu internetowego dla aplikacji mobilnych AppMaster, ale możesz zainstalować aplikację mobilną AppMaster Developer na Androida i IOS, aby wyświetlić podgląd na żywo swoich aplikacji ze wszystkimi funkcjami związanymi ze sprzętem, takimi jak BLE, NFC itp.

Po zakończeniu tworzenia aplikacji mobilnej i przygotowaniu jej do publikacji, AppMaster posiada specjalny kreator publikacji dostępny z menu kontekstowego na liście wszystkich aplikacji mobilnych w projekcie. Dla systemu Android, AppMaster wygeneruje pliki APK i AAB, które mogą być.

PODSUMOWANIE

AppMaster to duże IDE, w którym można planować aplikacje z zaawansowanymi planami w Data Models Designer, Business Process Editor, Web i Mobile Designers.

FAQ

Dlaczego potrzebujemy projektów z wieloma aplikacjami na projekt?

AppMaster wykorzystuje architekturę klient-serwer, a nie monolit. Istnieje wiele przypadków, w których możesz potrzebować wielu aplikacji na projekt, gdy musisz oddzielić funkcje:

  • Złożone projekty: takie jak taksówki, gdzie jedna aplikacja dla pasażerów i jedna dla kierowców pracuje z tym samym backendem.
  • Tworzenie wielu aplikacji backendowych, aby zrównoważyć obciążenie pracą i sprawić, że zmiany będą łatwe i mniej ryzykowne.

Chociaż można już tworzyć wiele aplikacji internetowych i mobilnych na projekt, wciąż pracujemy nad wprowadzeniem wielu aplikacji backendowych na projekt.

Jakie są zalety i wady generowanych aplikacji?

Najbardziej oczywiste i zauważalne korzyści to znacznie wyższa wydajność, skalowalność, możliwość uzyskania plików binarnych do uruchomienia lokalnie oraz kod źródłowy umożliwiający przejście certyfikacji i audytów. Do generowania aplikacji backendowych używamy najnowszej wersji języka programowania Go. Go zapewnia dużą wydajność skompilowanych aplikacji, kompilację krzyżową dla wielu systemów operacyjnych i architektur procesorów oraz ogólną prostotę dzięki zachowaniu elastyczności.

Najczęstsze wady to wymóg regeneracji i ponownego budowania aplikacji za każdym razem, gdy wprowadzono zmiany w planach, co zwykle zajmuje średnio około 35-45 sekund w przypadku projektów średniej wielkości. Ponadto istnieją pewne dodatkowe komplikacje i koszty, ponieważ musimy uruchamiać aplikacje w naszej chmurze: każda aplikacja, którą uruchamiamy w kontenerze docker, zużywa procesor i pamięć RAM (nawet jeśli jest bezczynna) i wymaga migracji schematu DB (robimy to automatycznie).

Ogólnie rzecz biorąc, aplikacje generowane przez kod działają równie dobrze, jak te tworzone przy użyciu klasycznego programowania.

Jaka technologia jest wykorzystywana w aplikacjach webowych?

Aplikacje webowe generujemy przy użyciu frameworka Vue3 z TypeScript (TS). Aplikacje internetowe działają w połączeniu trybów SPA i SSG. Server-Side Rendering (SSR) zostanie dodany później i tylko dla nowych projektantów aplikacji internetowych.

Jaka technologia jest używana w aplikacjach mobilnych?

Nasze aplikacje mobilne są tworzone przy użyciu deklaratywnego podejścia opartego na backendzie: używamy w pełni natywnej (najbardziej natywnej) bazy kodu Swift i SwiftUI dla IOS, Kotlin i Jetpack Compose dla Androida. Technicznie aplikacje mobilne ładują konfigurację i ekrany przez sieć na żądanie przy użyciu JSON i Protobuf dla maksymalnej wydajności. Takie podejście ma wiele zalet: można zmieniać aplikacje w czasie rzeczywistym bez konieczności publikowania zaktualizowanych wersji aplikacji w AppStore lub Play Market, można pracować całkowicie offline i mieć dostęp do wszystkich funkcji sprzętowych. W naszych aplikacjach mobilnych nie używamy technologii HTML/JS/ReactNative ani PWA. Aplikacje mobilne tworzone w AppMaster muszą być dystrybuowane za pośrednictwem AppStore, Play Market lub innej platformy dystrybucyjnej (technicznie rzecz biorąc, można udostępniać pliki apk/aab dla Androida, ale to dużo wysiłku).

Gdzie domyślnie hostowane są aplikacje?

Zbudowaliśmy AppMaster Cloud w oparciu o infrastrukturę AWS, aby zaoferować naszym klientom najbardziej niezawodną i skalowalną usługę. Domyślnie klienci z dowolną subskrypcją mogą korzystać z jednego z 3 podstawowych regionów: Ameryka Północna (USA), Europa (Niemcy), Azja. W przypadku dedykowanych planów hostingowych dostępna jest większość regionów AWS (poza podstawowymi lokalizacjami). Jeśli potrzebujesz konkretnego kraju do hostowania swojej aplikacji - daj nam znać.

Jak mogę uzyskać pakiet aplikacji, pliki binarne lub kod źródłowy moich aplikacji?

Aby uzyskać pliki binarne lub pakiety, musisz mieć co najmniej subskrypcję Business. Aplikacje backendowe można pobrać ze sklepu z artefaktami jako pliki binarne lub pobrać za pomocą docker pull z naszego rejestru (jak Docker Hub). Pakiety mobilne i internetowe można również pobrać ze sklepu z artefaktami. Pakiety aplikacji mobilnych można pobrać w ramach dowolnej subskrypcji z wyjątkiem Learn & Explore. Aby uzyskać kod źródłowy aplikacji, należy posiadać subskrypcję Enterprise. W ramach subskrypcji enterprise otrzymasz kompletny kod źródłowy backendu i aplikacji webowych, ale ograniczoną bazę kodu aplikacji mobilnych, ponieważ stosujemy tam podejście oparte na backendzie.

Jaka jest różnica między modelem a modelem wirtualnym?

Używamy terminu Model, aby wskazać strukturę, dla której utworzymy tabele w bazie danych i automatycznie wstępnie utworzymy bloki DB, aby wykonać podstawowe operacje na tej tabeli bazy danych, takie jak wyszukiwanie, tworzenie rekordów itp. Wirtualne modele są takie same, z wyjątkiem tego, że nie będziemy tworzyć tabel i nie będzie bloków DB. Wirtualne modele były jedną z najbardziej pożądanych funkcji przez większość programistów. Najczęstszym przypadkiem użycia modeli wirtualnych jest potrzeba utworzenia struktury (takiej jak obiekty w JS lub JSON) i użycia jej do zewnętrznych żądań, elementów interfejsu użytkownika lub punktów końcowych. Ciekawe jest to, że modele zdefiniowane w aplikacjach backendowych automatycznie pojawiają się w aplikacjach webowych i mobilnych jako wirtualne: w aplikacjach webowych i mobilnych musisz wiedzieć o dowolnej strukturze danych, aby móc z nią pracować.

Jak mogę pracować z modelami w procesach biznesowych? Jak wyodrębnić pola itp.

Dla każdego modelu wstępnie generujemy bloki Make i Expand. Make zbiera pola do rekordu modelu, Expand wyodrębnia pola z rekordu modelu. Należy pamiętać, że te bloki nie zmieniają początkowych danych, które są przekazywane do wejścia bloków.

Jak mogę ustawić wartość zmiennych lokalnych lub globalnych?

Wszystkie bloki, których będziesz używał, nie zmutują danych początkowych, gdy przekażesz je do wejścia. Jedynym blokiem, który mutuje dane jest Set Variable: połącz zmienną i wartość, a po wykonaniu bloku otrzymasz wartość wewnątrz zmiennej. Zmienne globalne w aplikacjach mobilnych i internetowych mogą być trwałe i przetrwają ponowne uruchomienie aplikacji, jeśli ustawiona jest odpowiednia flaga.

Jak mogę wykonać wywołanie API do zewnętrznego systemu?

Najlepszym sposobem na wysyłanie żądań do systemów zewnętrznych jest aplikacja backendowa. W ten sposób uzyskasz większą kontrolę nad danymi i bezpieczeństwem. Można to zrobić na dwa sposoby:

  • Użycie bloku żądania HTTP jest najprostszym sposobem, można go użyć w dowolnym backendzie BP.
  • Używając External API Designer, aby najpierw utworzyć żądanie, a następnie użyć spreparowanych bloków wewnątrz BP.

Chociaż możesz używać bloku żądania HTTP do wywoływania zewnętrznych systemów nie tylko w aplikacjach zaplecza, ale także w aplikacjach internetowych i mobilnych, musisz mieć powód, aby to zrobić: gdy twoja aplikacja frontendowa chce wykonać połączenie z urządzeniem w sieci lokalnej lub jeśli jest to zaprojektowane dla systemu innej firmy.

Jakie rodzaje żądań i protokołów są obsługiwane podczas wywoływania systemów zewnętrznych?

Obecnie obsługujemy żądania REST API z ładunkami JSON lub XML, zwykłym tekstem lub ładunkami binarnymi. gRPC nie jest jeszcze obsługiwany, ale aktywnie pracujemy nad wprowadzeniem go w najbliższych miesiącach za pomocą naszego zupełnie nowego External API Designer.

Czy aplikacje tworzone przez AppMaster obsługują WebSockets?

Tak, możesz tworzyć punkty końcowe WSS w aplikacji zaplecza i używać ich do komunikacji w aplikacjach internetowych lub mobilnych. Podczas tworzenia punktu końcowego WSS można również definiować własne struktury ładunku za pomocą modeli. Komunikacja z systemami zewnętrznymi za pomocą WebSockets nie jest zaimplementowana.

Jak mogę wywołać punkt końcowy backendu z aplikacji internetowej lub mobilnej?

Dla każdego punktu końcowego utworzonego w aplikacji zaplecza platforma tworzy blok żądania serweradla aplikacji internetowych i mobilnych. Wystarczy umieścić ten blok w dowolnym wyzwalaczu i wywołać go. Wykonanie bloków Server Request można monitorować w konsoli deweloperskiej przeglądarki, w zakładce żądań sieciowych. W aplikacjach mobilnych można korzystać z logów (należy je najpierw włączyć w ustawieniach AppMaster Developer App).

Czy mogę utworzyć niestandardowe uwierzytelnianie i rejestrację?

Oczywiście, możesz całkowicie wyłączyć wbudowany moduł autoryzacji i stworzyć w pełni niestandardowe rozwiązanie. Będziesz musiał utworzyć oddzielny BP w aplikacji backendowej, który będzie obsługiwał pobieranie tokena auth (zwykle z nagłówka żądania) i sprawdzał zgodnie z twoimi regułami. Nagłówki żądań można uzyskać za pomocą bloku BP Get Request Headers. Należy pamiętać, że po wyłączeniu wbudowanego uwierzytelniania nie będzie można użyć bloku Get Current User. Ponadto można użyć dowolnego identyfikatora, numeru telefonu lub innego identyfikatora zamiast adresu e-mail za pomocą standardowego modułu Auth.

Czy jest jakiś sposób na utworzenie operacji bezpiecznych dla wątków dla niezawodnych liczników i innych uporządkowanych przypadków wykonania?

AppMaster obsługuje tryb jednowątkowy do wykonywania procesów biznesowych, gdy wszystkie wywołania procesu biznesowego są wykonywane w ściśle określonej kolejności, jeden po drugim. Ten tryb może mieć wpływ na wydajność w sytuacjach dużego obciążenia, ale w większości przypadków nie powoduje znaczącego spadku wydajności. Należy pamiętać, że stos wywołań (kolejka) tego trybu jest ograniczony.

2FA z SMS, e-mail lub OTP?

Tak, możesz dostosować logikę uwierzytelniania, aby uwzględnić metody 2FA. Aby korzystać z wiadomości SMS lub e-mail, musisz połączyć się z zewnętrznym dostawcą, takim jak Twilio. Najprostszym sposobem jest rozszerzenie sesji i dodanie dodatkowych pól do kontrolowania 2FA w sesji. W Q3 2023 wprowadzimy moduł OTP oparty na czasie, który będzie współpracował z Google i Microsoft Authenticator.

Czy mogę używać backendu wygenerowanego przez AppMaster z innymi aplikacjami internetowymi lub mobilnymi?

Tak, aplikacje zaplecza wygenerowane przez AppMaster mają standardowe punkty końcowe REST API. Dla każdej aplikacji dokumentacja REST API (OpenAPI/Swagger) jest generowana automatycznie i udostępniana w osobnym punkcie końcowym.

Czy mogę używać szablonów do tworzenia projektów lub aplikacji?

Nie mamy jeszcze szablonów, ale udostępnimy je w najbliższej przyszłości. Projekty AppMaster są bardziej złożone niż WebFlow lub Bubble i potrzebujemy więcej czasu na ich wdrożenie.

Jaki typ bazy danych obsługuje AppMaster?

Aplikacja zaplecza wygenerowana przez AppMaster działa z dowolnymi bazami danych kompatybilnymi z PostgreSQL, począwszy od PG12, ale zalecamy korzystanie z najnowszej dostępnej wersji PostgreSQL DB (15.3 w momencie tworzenia tego dokumentu). Obsługa MSSQL, MariaDB, MySQL i SQLite jest planowana i zostanie dodana pod koniec 2023 roku/na początku 2024 roku.

Jak mogę uzyskać bezpośredni dostęp do bazy danych, aby edytować rekordy?

AppMaster nie obsługuje bezpośredniego dostępu do bazy danych dla aplikacji hostowanych w AppMaster Cloud. Jeśli korzystasz z hostingu lokalnego, możesz uzyskać dostęp do bazy danych za pomocą dowolnego narzędzia wizualnego, takiego jak PGAdmin lub narzędzia wiersza poleceń pgsql. W przyszłości dodamy funkcję umożliwiającą klientom bezpośrednią edycję bazy danych.

Czy możliwa jest współpraca w czasie rzeczywistym? Czy możemy pracować jako zespół nad tym samym projektem?

Współpracę w czasie rzeczywistym mamy tylko w nowym kreatorze stron internetowych. Nowy projektant stron internetowych (beta) wykorzystuje wersje robocze sieci z bezkonfliktowym protokołem replikowanych typów danych (CRDT), aby objąć wszystkie przypadki użycia i zapewnić zarządzanie stanem (Ctrl + Z, operacje wycofywania). W przyszłości będziemy stopniowo wprowadzać CRDT do edytora BP i kreatora modeli danych. Jeśli musisz pracować jako zespół, nie edytuj schematu modelu danych, tego samego BP lub tej samej aplikacji internetowej / mobilnej, ponieważ może to prowadzić do utraty danych.

Jakich ważnych funkcji może brakować w AppMaster?

  • Visual SQL Designer. Podczas gdy większość podstawowych operacji, takich jak wyszukiwanie z filtrami i sprzężeniami, pobieranie jednego rekordu według identyfikatora, aktualizacja, poprawianie, usuwanie i miękkie usuwanie są obsługiwane, ale dla lepszej elastyczności i wydajności pracujemy nad Visual SQL Designer i zostanie on wydany w październiku 2023 roku.
  • Mikrousługi zaplecza. Aktywnie pracujemy nad wdrożeniem wielu aplikacji backendowych na projekt. Obecnie można utworzyć tylko jedną aplikację zaplecza na projekt.
  • Brak SSR dla aplikacji internetowych. W przypadku najbardziej zoptymalizowanych aplikacji internetowych i witryn SSR zapewnia dodatkowe korzyści dla SEO. ETA listopad-2023.
  • Obsługa gRPC dla zewnętrznych żądań API. Planujemy dodać gRPC z ładunkiem protobuf i opcjami kompresji, aby rozszerzyć możliwości połączeń między systemami.
  • Szablony projektów, aplikacji webowych i mobilnych. Pracujemy nad wprowadzeniem szablonów. Szablony aplikacji webowych dodamy w pierwszej kolejności we wrześniu 2023 roku. Szablony całych projektów nie mają jeszcze ETA.
Was this article helpful?

AppMaster.io 101 Kurs zderzeniowy

10 moduły
2 Tygodnie

Nie wiesz, od czego zacząć? Rozpocznij z naszym szybkim kursem dla początkujących i poznaj AppMaster od A do Z.

Rozpocznij kurs
Development it’s so easy with AppMaster!

Potrzebujesz więcej pomocy?

Rozwiąż każdy problem z pomocą naszych ekspertów. Oszczędzaj czas i skup się na tworzeniu aplikacji.

headphones

Skontaktuj się z pomocą techniczną

Opowiedz nam o swoim problemie, a my znajdziemy dla Ciebie rozwiązanie.

message

Czat społeczności

Omów pytania z innymi użytkownikami na naszym czacie.

Dołącz do społeczności