Wenn Sie bereits Erfahrung mit klassischer Programmierung oder anderen No-Code/Low-Code-Plattformen haben, werden Ihnen viele Konzepte vertraut sein.

Im Gegensatz zu anderen No-Code- und Low-Code-Lösungen verfolgt AppMaster einen klassischen Ansatz für die Erstellung von Anwendungen. Das grundlegende Element in AppMaster ist ein Projekt, nicht eine Anwendung wie bei anderen Plattformen. Projekte können aus mehreren Backend-, Web- und mobilen Anwendungen bestehen. Die Architektur der Lösung - Client-Server (kein Monolith wie bei Bubble oder ähnlichen Plattformen).

Wenn Sie von anderen No-Code-Plattformen umsteigen, sollten Sie bedenken, dass Sie in AppMaster Backend-, Web- und mobile Anwendungen separat mit verschiedenen Plattform-Tools erstellen. Einer der frustrierendsten Momente für solche Benutzer ist es, sich daran zu erinnern, dass man separate Anwendungen erstellen und die Logik in diesen Anwendungen aufbauen muss.

Wie fängt man an?

Für die meisten Projekte müssen Sie Backend und Web oder Backend und Mobile oder sogar alle Arten von Anwendungen erstellen.

WICHTIG! Achten Sie darauf, dass Sie den Großteil Ihrer Logik in der Backend-Anwendung implementieren. Platzieren Sie niemals wichtige Logik in der Web- oder Mobilanwendung, wo Sie keine Kontrolle haben. Das Frontend ist nur für die Visualisierung von Daten und die Sammlung von Informationen aus Benutzereingaben gedacht.

Der einfachste Weg ist es, mit der Erstellung einer Backend-Anwendung zu beginnen.

BACKEND-ANWENDUNGEN

Backend Schritt 1. Definieren Sie Ihre Datenmodelle im Backend Data Models Designer. Sie können sich jedes Modell als eine Tabelle in der SQL-Datenbank (mit Beziehungen) vorstellen. In AppMaster werden Datenmodelle nicht nur zur Definition primärer Datenbanktabellen verwendet, sondern auch als projektübergreifende Strukturdeklaration. Wenn Ihre Logik z.B. das Datenmodell "Benutzer" verwendet, können Sie sicher sein, dass jede Struktur dieses Typs den gleichen Satz von Feldern hat.

Klicken Sie mit der rechten Maustaste auf die Arbeitsfläche des Datenmodell-Designers, um ein neues Modell zu erstellen, und ziehen Sie es von einem Modellrand zu einem anderen Modellrand, um eine Beziehung zu erstellen. Klicken Sie auf die Beziehung oder das Modellfeld, um es zu bearbeiten.

Seien Sie vorsichtig mit Feldeigenschaften wie Unique, Not NULL oder Index: Wenn Sie die NOT NULL- oder Unique-Richtlinie auf die bestehende Datenbank mit leeren oder doppelten Werten anwenden, wird die DB-Schema-Migration letztendlich fehlschlagen.

Backend Schritt 2. Erstellen Sie Geschäftsprozesse für Ihre Anwendung. Ein Geschäftsprozess (BP) im Sinne der AppMaster Platform ist nur ein eindeutiger Begriff für eine Funktion in der klassischen Programmierung.

Jeder Backend BP hat 2 obligatorische Blöcke: Start und Ende. Wenn Sie Daten an Ihren BP übergeben möchten, müssen Sie im Start-Block Variablen definieren (sie funktionieren wie Argumente in Funktionen der klassischen Programmierung) und diese mit Ihren Blöcken innerhalb des BPs verbinden.

Um Daten aus dem GP zurückzugeben, können Sie Variablen zum End-Block hinzufügen (wie Return in Funktionen der klassischen Programmierung).

Es gibt 2 Arten von Verbindungen zwischen BP-Blöcken:

  • eine durchgehende blaue Pfeillinie, die Flussverbindungen genannt wird und die Reihenfolge der Blockausführung festlegt (welcher Block als nächstes ausgeführt werden soll)
  • dünne, mehrfarbige Linien, die Variablenverbindungen genannt werden und die Datenverbindungen definieren (woher die Daten kommen sollen - Datenverbindung zwischen den GP-Blöcken). Jede Farbe steht für einen anderen Datentyp

Normalerweise werden die Stellen in GP-Blöcken für Fluss- oder Variablenverbindungen als Konnektoren bezeichnet. Alle Konnektoren auf der linken Seite des Blocks sind In-Konnektoren (empfangen Flow oder Daten), und auf der rechten Seite sind Out-Konnektoren (leiten Flow oder Daten weiter).

Um eine Verbindung zu erstellen, müssen Sie von einem Konnektor zum anderen ziehen (ziehen Sie zwischen den Blöcken, die Sie verbinden möchten).

Unabhängig davon, von welcher Seite Sie mit dem Ziehen beginnen, wird eine Verbindung hergestellt.

Der BP-Editor prüft automatisch die Datentypen für variable Verbindungen und lässt Sie keine Verbindung herstellen, wenn die Datentypen nicht identisch sind; außerdem werden Schleifen oder schlechte Verbindungen verhindert.

Sie können einen BP von einem anderen aus aufrufen - ziehen Sie einfach den entsprechenden Block aus dem linken Bereich und lassen Sie ihn fallen. Wir verwenden diesen Ansatz häufig, um die Komplexität der Logik zu minimieren und die gleiche Logik mehrfach im Projekt zu verwenden.

Es gibt 2 Arten von Variablen in den Backend-Anwendungen, die Sie im BP platzieren können, um Daten vorübergehend zu speichern:

  • Lokale Variablen - zum Speichern von Daten während des Lebenszyklus des aktuellen GPs (am effizientesten, nur im Speicher)
  • Globale Variablen - speichern Ihre Daten während des Lebenszyklus der Backend-Anwendung (ebenfalls nur speicherintern, werden zurückgesetzt, sobald die Anwendung neu gestartet wird)

Bevor Sie eine Globale Variable verwenden können, indem Sie sie aus dem linken Feld des BP-Editors ziehen, müssen Sie eine solche in einem Abschnitt der Backend-Logik erstellen.

Wenn Ihr BP von einer externen Quelle über eine API aufgerufen werden muss (aus dem Web, mobil, mit postman/curl, von einem externen System), müssen Sie den BP mit dem Endpunkt verbinden.

Backend Schritt 3. Endpunkte erstellen. In AppMaster verwenden wir den gleichen klassischen REST-API-Ansatz für Endpunkte. Obwohl AppMaster nicht nur REST-API-Endpunkte, sondern auch WebHooks und WSS-Endpunkte unterstützt, werden wir uns auf den ersten Typ konzentrieren.

Wenn Sie Endpunkte erstellen, halten Sie sich bitte an den REST-API-Standard in Bezug auf Methoden (GET, POST, PUT, PATCH, DELETE), Nutzdaten (verwenden Sie JSON) und URLs (keine Nicht-ASCII-Zeichen, keine Leerzeichen, beginnt und endet mit einem Schrägstrich).

Der Prozess der Erstellung von Endpunkten ist sehr einfach und unkompliziert: Wählen Sie BP, definieren Sie URL und REST-Methode, und wenn Sie eine Autorisierung für diesen Endpunkt benötigen - überprüfen Sie die Middleware-Einstellungen.

Sobald die Datenmodelle, Geschäftsprozesse und Endpunkte fertig sind, ist es an der Zeit, sie zu veröffentlichen - klicken Sie auf die Schaltfläche Veröffentlichen! Normalerweise nimmt AppMaster Platform in weniger als 30 Sekunden alle Ihre Entwürfe (ja, eigentlich ist alles, was Sie getan haben, die Erstellung von Entwürfen für die zukünftige Software), generiert den Quellcode, kompiliert, packt ihn in ein Docker-Image und stellt ihn in der AppMaster Cloud bereit. Wenn der Prozess der Veröffentlichung abgeschlossen ist, können Sie die REST-API-Dokumentation (OpenAPI/Swagger) öffnen und Ihre Endpunkte mit den in Swagger integrierten Anfragen oder mit Drittanbieter-Tools wie Postman oder Insomnia testen.

WICHTIG! Wenn Sie mit einem Learn & Explore-Abonnement arbeiten, wird unser Resource Saving Daemon Ihren Anwendungscontainer nach 30 Minuten Inaktivität in Studio stoppen. Um die Anwendung erneut zu starten, klicken Sie auf die Schaltfläche Deploy Plan oder veröffentlichen Sie sie erneut.

WEBANWENDUNGEN

Wenn das Backend ordnungsgemäß geplant und erstellt ist, ist es an der Zeit, sich dem Frontend zuzuwenden. Wir beginnen mit der Webanwendung.

Webanwendung Schritt 1. Erstellen Sie eine Webanwendung, wenn Sie noch keine im Projekt haben. Ab sofort gibt es 2 Arten von Web Application Designern: aktuelle und neue (in der Beta-Phase). Der Hauptunterschied ist der Umfang der Anpassungsmöglichkeiten. Die aktuelle Generation des WebApp Designers hat sehr begrenzte Möglichkeiten der UI-Anpassung, aber einfache und leicht zu erstellende Standard-UI-Schnittstellen von Admin-Panels und Kundenportalen. Der neue (derzeit in der Beta-Phase) hat eine vollständige Anpassung des UI-Looks und füllt - ein Flexbox-Ansatz mit Layouts von SPA (Vue, React Weg). Beide Designer haben Geschäftsprozesse eingebaut, einschließlich Triggern und einer Reihe von nützlichen Blöcken.

WebApp Schritt 2. Beginnen Sie mit der Gestaltung der UI Ihrer Webanwendung, indem Sie UI-Elemente aus dem oberen Bereich (aktueller Designer) oder dem linken Bereich (neuer Designer) ziehen und ablegen. Bei einigen Elementen, die eine Aufzählung enthalten (z. B. Tabellen und Listen), müssen Sie in der ersten Drop-Phase das Datenmodell auswählen, damit das Element automatisch angepasst wird.

Es gibt 2 Arten von Geschäftsprozessen in Webanwendungen: Auslöser und Standard. Trigger sind für jedes UI-Element und für den anwendungsweiten Bereich (App-Trigger) verfügbar. Um auf den Trigger eines UI-Elements zuzugreifen, wählen Sie das Element aus und legen Sie auf der Registerkarte BP einen Trigger an. Im Gegensatz zu Standard-GP haben Trigger mehrere Startblöcke: einen Block für jedes Ereignis und keinen Endblock. Da Auslöser nie Werte zurückgeben, sind Endblöcke nicht erforderlich. Sie können immer noch Standardgeschäftsprozesse in Webanwendungen erstellen, aber die einzige Möglichkeit, sie auszuführen, besteht darin, sie von den Triggern aus aufzurufen. Das ist ein guter Ansatz, um häufig verwendete Logik in die Standard-Web-GP zu verschieben und sie nur von Triggern aus aufzurufen.

WICHTIG! Bitte denken Sie daran, dass Backend-BP innerhalb von Backend-Anwendungen ausgeführt werden, während Webapplikations-BP in den Browsern der Benutzer ausgeführt werden, und dass eine Minimierung der Web-Arbeitslast für die Benutzererfahrung von Vorteil ist.

Es gibt einige sehr wichtige Auslöser auf Anwendungsebene. Zum Beispiel wird App onLaunch ausgelöst, wenn eine Anwendung im Browser gerade gestartet wurde. Dies ist der beste Ort, um zu prüfen, ob der Benutzer authentifiziert ist, und wenn nicht, auf die richtige Seite umzuleiten (wenn Sie überhaupt eine Authentifizierung benötigen).

Vergessen Sie nicht, Ihr Webanwendungsschema zu speichern und Ihr Projekt zu veröffentlichen, um Änderungen zu sehen.

MOBILE ANWENDUNGEN

Wenn Sie eine mobile Anwendung erstellen möchten, ist der Prozess derselbe wie bei einer Webanwendung: Erstellen Sie Bildschirme, platzieren Sie UI-Elemente, erstellen Sie Trigger für UI-Elemente, passen Sie den App onLaunch-Trigger an und schon können Sie loslegen. Es gibt keine Webvorschau für mobile Anwendungen von AppMaster, aber Sie können die mobile Anwendung AppMaster Developer für Android und IOS installieren, um eine Live-Vorschau Ihrer Anwendungen mit allen hardwarebezogenen Funktionen wie BLE, NFC usw. zu erhalten.

Wenn Sie mit der Entwicklung Ihrer mobilen Anwendung fertig sind und sie veröffentlicht werden soll, bietet AppMaster einen speziellen Veröffentlichungsassistenten, der über das Kontextmenü in der Liste aller mobilen Anwendungen im Projekt verfügbar ist. Für Android generiert AppMaster APK- und AAB-Dateien, die veröffentlicht werden können.

ZUSAMMENFASSUNG

AppMaster ist eine große IDE, in der Sie Ihre Anwendungen mit fortschrittlichen Blaupausen im Datenmodell-Designer, Geschäftsprozess-Editor, Web- und Mobile-Designer planen können.

FAQ

Warum brauchen wir Projekte mit mehreren Anwendungen pro Projekt?

AppMaster arbeitet mit einer Client-Server-Architektur und nicht mit einem Monolithen. Es gibt viele Fälle, in denen Sie mehrere Anwendungen pro Projekt benötigen, wenn Sie Funktionen trennen müssen:

  • Komplexe Projekte: z.B. Taxi, wenn eine App für Fahrgäste und eine für Fahrer mit demselben Backend arbeiten
  • Erstellen Sie mehrere Backend-Anwendungen, um die Arbeitslast auszugleichen und Änderungen einfach und weniger riskant zu machen

Während Sie bereits mehrere Web- und Mobilanwendungen pro Projekt erstellen können, arbeiten wir noch an der Einführung mehrerer Backend-Anwendungen pro Projekt.

Was sind die Vor- und Nachteile von generierten Anwendungen?

Die offensichtlichsten und spürbarsten Vorteile sind die deutlich höhere Leistung, die Skalierbarkeit, die Möglichkeit, Binärdateien zur Ausführung vor Ort zu erhalten, und der Quellcode, der Zertifizierungen und Audits besteht. Wir verwenden die neueste Version der Programmiersprache Go, um Backend-Anwendungen zu erstellen. Go bietet eine hohe Leistung der kompilierten Anwendungen, Cross-Kompilierung für mehrere Betriebssysteme und CPU-Architekturen und allgemeine Einfachheit, da es flexibel bleibt.

Die häufigsten Nachteile sind das Erfordernis, die Anwendung jedes Mal neu zu generieren und zu erstellen, wenn Sie Änderungen an Ihren Entwürfen vorgenommen haben, was bei mittelgroßen Projekten im Durchschnitt 35-45 Sekunden dauert. Außerdem entstehen zusätzliche Komplexität und Kosten, da wir Apps in unserer Cloud ausführen müssen: Jede App, die wir im Docker-Container ausführen, verbraucht CPU und RAM (auch im Leerlauf) und erfordert eine DB-Schema-Migration (die wir automatisch durchführen).

Aber im Allgemeinen funktionieren Code-generierte Anwendungen genauso gut wie solche, die mit klassischer Programmierung erstellt wurden.

Welche Technologie wird in Webanwendungen verwendet?

Wir erstellen Webanwendungen mit dem Vue3-Framework mit TypeScript (TS). Die Webanwendungen arbeiten in einer Kombination aus SPA- und SSG-Modus. Server-Side Rendering (SSR) wird später und nur für neue Webapplikationsdesigner hinzugefügt.

Welche Technologie wird in mobilen Anwendungen verwendet?

Unsere mobilen Anwendungen werden mit einem deklarativen, Backend-gesteuerten Ansatz erstellt: Wir verwenden eine vollständig native (die nativste) Codebasis von Swift und SwiftUI für IOS, Kotlin und Jetpack Compose für Android. Technisch gesehen laden mobile Anwendungen die Konfiguration und Bildschirme bei Bedarf über das Netzwerk, wobei JSON und Protobuf für maximale Leistung verwendet werden. Dieser Ansatz bietet viele Vorteile: Sie können Anwendungen in Echtzeit ändern, ohne aktualisierte Versionen der Anwendungen im AppStore oder Play Market veröffentlichen zu müssen, können vollständig offline arbeiten und haben Zugriff auf alle Hardwarefunktionen. Wir verwenden keine HTML/JS/ReactNative- oder PWA-Technologie in unseren mobilen Anwendungen. Mit AppMaster erstellte mobile Anwendungen müssen über den AppStore, Play Market oder eine andere Vertriebsplattform vertrieben werden (technisch gesehen können Sie apk/aab-Dateien für Android weitergeben, aber das ist ein großer Aufwand).

Wo hosten Sie Anwendungen standardmäßig?

Wir haben AppMaster Cloud auf der AWS-Infrastruktur aufgebaut, um unseren Kunden den zuverlässigsten und skalierbarsten Service zu bieten. Standardmäßig können Kunden mit einem beliebigen Abonnement eine von 3 Kernregionen nutzen: Nordamerika (USA), Europa (Deutschland), Asien. Für dedizierte Hosting-Angebote stehen die meisten AWS-Regionen zur Verfügung (über die Kernregionen hinaus). Wenn Sie ein bestimmtes Land für das Hosting Ihrer Anwendung benötigen, lassen Sie es uns wissen.

Wie kann ich das Anwendungspaket, die Binärdateien oder den Quellcode meiner Anwendungen erhalten?

Um Binärdateien oder Bundles zu erhalten, müssen Sie mindestens ein Business-Abonnement haben. Backend-Anwendungen können als Binärdateien aus dem Artefakt-Store heruntergeladen oder per Docker-Pull aus unserer Registry (wie Docker Hub) gezogen werden. Mobile und Web-Bundles können ebenfalls aus dem Artefakt-Store heruntergeladen werden. Sie können Mobile-App-Bundles mit jedem Abonnement außer Learn & Explore herunterladen. Um den Quellcode der Anwendung zu erhalten, müssen Sie ein Enterprise-Abonnement haben. Mit einem Enterprise-Abonnement erhalten Sie den vollständigen Quellcode von Backend- und Webanwendungen, aber nur eine begrenzte Codebasis für mobile Anwendungen, da wir hier einen Backend-getriebenen Ansatz verwenden.

Was ist der Unterschied zwischen einem Modell und einem virtuellen Modell?

Wir verwenden den Begriff Modell, um auf die Struktur hinzuweisen, für die wir Tabellen in einer Datenbank erstellen und automatisch DB-Blöcke erstellen, um grundlegende Operationen mit dieser Datenbanktabelle durchzuführen, wie z. B. Suchen, Erstellen von Datensätzen usw. Virtuelle Modelle sind dasselbe, nur dass wir keine Tabellen erstellen und es keine DB-Blöcke geben wird. Virtuelle Modelle waren eine der von den meisten Entwicklern am meisten gewünschten Funktionen. Der häufigste Anwendungsfall für virtuelle Modelle ist die Erstellung einer Struktur (wie Objekte in JS oder JSON) und deren Verwendung für externe Anfragen, UI-Elemente oder Endpunkte. Es ist merkwürdig, dass Modelle, die in Backend-Anwendungen definiert werden, automatisch in Web- und Mobile-Apps als virtuelle Modelle erscheinen: In Web- und Mobile-Apps müssen Sie über jede Datenstruktur Bescheid wissen, um damit arbeiten zu können.

Wie kann ich mit Modellen in Geschäftsprozessen arbeiten? Wie extrahiert man Felder usw.?

Für jedes Modell generieren wir vorab die Blöcke Make und Expand. Make fügt Felder zum Model Record hinzu, Expand extrahiert Felder aus dem Model Record. Bitte beachten Sie, dass diese Blöcke die ursprünglichen Daten, die an den Eingang der Blöcke übergeben werden, nicht verändern.

Wie kann ich Werte für die lokalen oder globalen Variablen setzen?

Alle Blöcke, die Sie verwenden werden, verändern die Anfangsdaten nicht, wenn Sie sie an den Eingang übergeben. Der einzige Block, der Daten verändert, ist "Setze Variable": Verbinden Sie Variable und Wert und nach der Ausführung des Blocks erhalten Sie den Wert in der Variable. Globale Variablen in Mobil- und Webanwendungen können persistent sein und überleben einen Neustart der Anwendung, wenn das entsprechende Flag gesetzt ist.

Wie kann ich einen API-Aufruf an ein externes System tätigen?

Der beste Weg, um Anfragen an externe Systeme zu stellen, ist von Ihrer Backend-Anwendung aus. Auf diese Weise erhalten Sie mehr Kontrolle über Daten und Sicherheit. Es gibt zwei Möglichkeiten, wie Sie dies tun können:

  • Der einfachste Weg ist die Verwendung des HTTP-Anforderungsblocks, den Sie in jedem Backend-BP verwenden können.
  • Verwenden Sie den External API Designer, um zuerst eine Anfrage zu erstellen und dann die erstellten Blöcke innerhalb Ihrer BPs zu verwenden.

Sie können den HTTP-Request-Block zwar nicht nur in Backend-Anwendungen, sondern auch im Web und auf mobilen Endgeräten zum Aufrufen externer Systeme verwenden, aber Sie müssen einen Grund dafür haben: wenn Ihre Frontend-Anwendung einen Anruf an das Gerät im lokalen Netzwerk tätigen möchte oder wenn dies für das System eines Drittanbieters vorgesehen ist.

Welche Arten von Anfragen und Protokollen werden beim Aufruf externer Systeme unterstützt?

Ab sofort unterstützen wir REST-API-Anfragen mit JSON- oder XML-Payloads, Klartext- oder Binär-Payloads. gRPC wird noch nicht unterstützt, aber wir arbeiten aktiv daran, es in den nächsten Monaten mit unserem brandneuen External API Designer einzuführen.

Unterstützen mit AppMaster erstellte Anwendungen WebSockets?

Ja, Sie können WSS-Endpunkte in der Backend-Anwendung erstellen und sie für die Kommunikation innerhalb von Web- oder mobilen Anwendungen verwenden. Außerdem können Sie bei der Erstellung des WSS-Endpunkts Ihre eigenen Nutzdatenstrukturen mithilfe von Modellen definieren. Die Kommunikation mit externen Systemen über WebSockets ist nicht implementiert.

Wie kann ich den Backend-Endpunkt von einer Web- oder mobilen Anwendung aus aufrufen?

Für jeden Endpunkt, den Sie in der Backend-Anwendung erstellt haben, erstellt die Plattform einen Server-Request-Blockfür Web- und mobile Anwendungen. Platzieren Sie diesen Block einfach in einem beliebigen Trigger und rufen Sie ihn auf. Sie können die Ausführung von Server-Request-Blöcken in der Browser-Entwicklerkonsole auf der Registerkarte Netzwerkanfragen überwachen. In mobilen Anwendungen können Sie Protokolle verwenden (muss zuerst in den AppMaster Developer App-Einstellungen aktiviert werden).

Kann ich eine benutzerdefinierte Authentifizierung und Anmeldung erstellen?

Sicher, Sie können das integrierte Authentifizierungsmodul vollständig deaktivieren und eine vollständig benutzerdefinierte Lösung erstellen. Sie müssen einen separaten BP in der Backend-Anwendung erstellen, der die Abfrage des Authentifizierungs-Tokens (normalerweise aus dem Request-Header) und die Überprüfung nach Ihren Regeln übernimmt. Sie können Request-Header mit dem BP-Block Get Request Headers abrufen. Bitte beachten Sie, dass Sie den Block Get Current User nicht mehr verwenden können, wenn Sie die integrierte Authentifizierung deaktivieren. Außerdem können Sie mit dem Standard-Authentifizierungsmodul eine beliebige ID, Telefonnummer oder einen anderen Identifikator anstelle der E-Mail verwenden.

Gibt es eine Möglichkeit, thread-sichere Operationen für zuverlässige Zähler und andere geordnete Ausführungsfälle zu erstellen?

AppMaster unterstützt einen Single-Thread-Modus für die Ausführung von Geschäftsprozessen, bei dem alle Aufrufe des Geschäftsprozesses in einer strikten Reihenfolge, einer nach dem anderen, ausgeführt werden. Dieser Modus kann in Situationen mit hoher Arbeitslast zu Leistungseinbußen führen, in den meisten Fällen verursacht er jedoch keine signifikanten Leistungseinbußen. Bitte beachten Sie, dass der Aufrufstapel (Warteschlange) in diesem Modus begrenzt ist.

2FA mit SMS, E-Mail oder OTP?

Ja, Sie können Ihre Anmeldelogik so anpassen, dass sie 2FA-Methoden umfasst. Um SMS oder E-Mail zu verwenden, müssen Sie einen externen Anbieter wie Twilio einbinden. Am einfachsten ist es, die Sitzungen zu erweitern und zusätzliche Felder zur Steuerung der 2FA in der Sitzung aufzunehmen. In Q3 2023 werden wir ein zeitbasiertes OTP-Modul einführen, das mit Google und Microsoft Authenticator funktioniert.

Kann ich das von AppMaster generierte Backend mit anderen Web- oder Mobilanwendungen verwenden?

Ja, AppMaster-generierte Backend-Anwendungen haben Standard-REST-API-Endpunkte. Für jede Anwendung wird automatisch eine REST-API-Dokumentation (OpenAPI/Swagger) generiert und über einen separaten Endpunkt bereitgestellt.

Kann ich Vorlagen verwenden, um Projekte oder Anwendungen zu erstellen?

Wir haben noch keine Vorlagen, aber das ist etwas, das wir in naher Zukunft veröffentlichen werden. AppMaster-Projekte sind komplexer als WebFlow oder Bubble und wir brauchen mehr Zeit, um sie zu implementieren.

Welche Arten von Datenbanken unterstützt AppMaster?

AppMaster-generierte Backend-Anwendungen arbeiten mit allen PostgreSQL-kompatiblen Datenbanken ab PG12, aber wir empfehlen die Verwendung der neuesten verfügbaren Version von PostgreSQL DB (15.3 zum Zeitpunkt dieses Dokuments). Die Unterstützung von MSSQL, MariaDB, MySQL und SQLite ist geplant und wird Ende 2023/Anfang 2024 hinzugefügt werden.

Wie kann ich direkt auf die Datenbank zugreifen, um Datensätze zu bearbeiten?

AppMaster unterstützt keinen direkten DB-Zugriff für Anwendungen, die in der AppMaster Cloud gehostet werden. Wenn Sie On-Premise-Hosting verwenden, können Sie mit einem beliebigen visuellen Tool wie PGAdmin oder mit dem Kommandozeilen-Tool pgsql auf die DB zugreifen. In Zukunft werden wir eine Funktion hinzufügen, mit der Kunden die DB direkt bearbeiten können.

Gibt es eine Echtzeit-Zusammenarbeit? Können wir als Team am selben Projekt arbeiten?

Eine Echtzeit-Zusammenarbeit gibt es nur im neuen Web-Designer. Der neue Web-Designer (Beta-Version) verwendet Netzwerkentwürfe mit dem Conflict-free Replicated Data Type Protocol (CRDT), um alle Anwendungsfälle abzudecken und eine Zustandsverwaltung zu ermöglichen (Strg+Z, Rollback von Operationen). Wir werden CRDT in Zukunft schrittweise in den BP-Editor und den Data Models Designer einführen. Wenn Sie im Team arbeiten müssen, bearbeiten Sie bitte nicht dasselbe Datenmodellschema, denselben GP oder dieselbe Web/Mobile App, da dies zu Datenverlusten führen kann.

Welche wichtigen Funktionen könnten AppMaster fehlen?

  • Dervisuelle SQL-Designer. Zwar werden die meisten grundlegenden Operationen wie Suche mit Filtern und Joins, einen Datensatz nach ID abrufen, Update, Patch, Delete und Soft Delete unterstützt, aber für mehr Flexibilität und Leistung arbeiten wir an Visual SQL Designer, der im Oktober 2023 veröffentlicht wird.
  • Backend-Microservices. Wir arbeiten aktiv an der Implementierung mehrerer Backend-Anwendungen pro Projekt. Im Moment können Sie nur eine Backend-Anwendung pro Projekt erstellen.
  • Noch kein SSR für Webanwendungen. Für die am stärksten optimierten Webanwendungen und Websites bietet SSR zusätzliche Vorteile für SEO. Voraussichtlich November 2023.
  • gRPC-Unterstützung für externe API-Anfragen. Wir planen, gRPC mit Protobuf-Payload und Komprimierungsoptionen hinzuzufügen, um die Möglichkeiten für die Verbindung zwischen Systemen zu erweitern.
  • Templates für Projekte, Web- und mobile Anwendungen. Wir arbeiten an der Einführung von Vorlagen. In einem ersten Schritt werden wir im September 2023 Vorlagen für Webanwendungen hinzufügen. Für die gesamten Projektvorlagen gibt es noch kein ETA.
Was this article helpful?

AppMaster.io 101 Crash-Kurs

10 Module
2 Wochen

Sie wissen nicht, wo Sie anfangen sollen? Legen Sie los mit unserem Crashkurs für Anfänger und erkunden Sie AppMaster von A bis Z.

Kurs starten
Development it’s so easy with AppMaster!

Benötigen Sie weitere Hilfe?

Lösen Sie jedes Problem mit Hilfe unserer Experten. Sparen Sie Zeit und konzentrieren Sie sich auf die Erstellung Ihrer Anwendungen.

headphones

Kontaktieren Sie Support

Schildern Sie uns Ihr Problem und wir finden eine Lösung für Sie.

message

Community-Chat

Besprechen Sie Fragen mit anderen Benutzern in unserem Chat.

Community beitreten