Best Practices für den Bau Mendix Widgets effizient | Mendix

Direkt zum Inhalt

Best Practices für den Bau Mendix Widgets effizient

Key Take Away

  • Wählen Sie die richtige Widget-Architektur: Die Auswahl eines geeigneten Widget-Ansatzes ist entscheidend für die Balance zwischen Funktionalität, Skalierbarkeit und Komplexität.
  • Verstehen Sie die Kompromisse bei der Entwicklung: Verschiedene Widget-Strategien bieten einzigartige Vorteile und Einschränkungen. Richten Sie Ihre Wahl daher an den Anforderungen Ihres Projekts aus.
  • Nutzen Sie die Vorteile von MendixIntegrierte Optimierungen: Die Verwendung nativer Komponenten vereinfacht die Entwicklung und bietet effiziente Funktionen wie Paginierung und Lazy Loading.
  • Planen Sie für die Komplexität mehrerer Widgets: Multi-Widget-Setups erfordern eine sorgfältige Planung hinsichtlich Statusverwaltung, Kommunikation und Leistungsoptimierung.

In letzter Zeit hat sich die Entwicklungslandschaft verändert, so dass es einfacher denn je erscheint, Mendix Widgets durch Vibe-Codierung. Der Reiz ist groß: Lehnen Sie sich einfach zurück, entspannen Sie sich und bitten Sie eine KI, den Code zu generieren. Nach einigem Ausprobieren haben Sie vielleicht tatsächlich ein funktionierendes Widget und eine anständige Benutzeroberfläche. Klingt doch sehr gut, oder?

Diese scheinbare Einfachheit kann jedoch trügerisch sein. KI kann zwar zweifellos den anfänglichen Aufbau beschleunigen, doch eine entscheidende Wahrheit bleibt bestehen: Sie müssen das System dennoch kennen. Ohne dieses grundlegende Verständnis kann sich das ausschließliche Verlassen auf KI-generierten Code schnell als blindes Kopieren von Lösungen von Stack Overflow erweisen, ohne die zugrunde liegenden Prinzipien wirklich zu verstehen.

Entwicklung von Widgets für Mendix bringt ganz eigene Herausforderungen mit sich und erfordert wohlüberlegte Entscheidungen, die sich sowohl auf den Entwicklungsprozess als auch auf den langfristigen Erfolg Ihrer Anwendung auswirken. Von der Wahl der richtigen Architektur über die Datenverarbeitung bis hin zur Leistungsoptimierung bringt jede Entscheidung ihre eigenen Kompromisse mit sich.

Indem Sie die verschiedenen verfügbaren Ansätze erkunden und ihre Auswirkungen verstehen, können Sie fundiertere Entscheidungen treffen und Widgets erstellen, die sowohl leistungsstark als auch skalierbar sind. Lassen Sie uns tiefer in die Nuancen von Mendix Widget-Entwicklung.

Widget-Architektur – Die richtige Wahl treffen

Beim Erstellen eines Widgets für Mendix, beginnen Sie mit einer Architekturentscheidung, um den besten Ansatz zu bestimmen. Ihre Optionen hängen weitgehend von der Komplexität des Widgets ab, und Sie müssen Folgendes berücksichtigen:

  • Eine Kombination aus Widgets und Mendix Komponenten
  • Container-Widgets
  • Mehrere Widgets
  • Loader-Widget-Ansatz

Der erste Ansatz, der mir in den Sinn kommt, ist die Erstellung eines Widgets für die gesamte Komponente. Während dies bei einfachen Komponenten einfach ist, wird es schwieriger, wenn die Komponente komplex ist und mehrere interaktive Aktionen umfasst.

Lassen Sie uns dies anhand eines Aufgabenliste Widget als Beispiel. Ich werde drei verschiedene Ansätze zur Implementierung desselben Widgets besprechen.

 

Ansatz 1: Einzelnes Widget als Listencontainer

Bei diesem Ansatz integrieren Sie die Datenquelle in die Einstellungen des To-do-Listen-Widgets. Das Widget übernimmt die Darstellung der gesamten Liste und gibt Ihnen die volle Kontrolle über die Ansicht. Sie können Elemente beispielsweise vertikal, horizontal oder als Karten mit benutzerdefinierten Layouts darstellen, die mit Standard-Widgets nicht möglich sind. Mendix Listenkomponenten.

Sie müssen jedoch alle listenbezogenen Herausforderungen innerhalb des Widgets bewältigen, einschließlich, aber nicht beschränkt auf Paginierung, Sortierung, Filterung und Lazy-Loading-Verhalten. Dies bedeutet, dass Sie diese Funktionen von Grund auf neu implementieren müssen, anstatt Mendixintegrierte Optimierungen.

Komplexität der Datenverarbeitung

Die nächste große Herausforderung ist die Handhabung von Aktionen und Datenaktualisierungen. Da die Datenquelle schreibgeschützt ist, können Sie ein To-do-Element nicht direkt ändern. Stattdessen benötigen Sie ein Dummy-Attribut, um Änderungen über Microflows weiterzuleiten. Dies bringt mehrere Implementierungsherausforderungen mit sich:

Aktualisierungsvorgänge

Für einfache Vorgänge wie das Löschen eines Elements oder das Ändern des To-do-Status können Sie separate Aktionen implementieren. Für komplexere Aktualisierungen müssen Sie jedoch entweder alle Änderungen an einen einzigen Microflow übergeben oder für jede Aktualisierungsaktion (Status ändern, Titel ändern, Fälligkeitsdatum ändern, Priorität ändern usw.) separate Microflows erstellen.

Leistungsüberlegungen

Bei großen Datensätzen müssen Sie Ihre eigene Paginierungslogik implementieren. Dazu gehört die Verwaltung der Seitengröße, die Verarbeitung von Scroll-Ereignissen für unendliches Scrollen und die Gewährleistung einer reibungslosen Leistung, wenn Benutzer durch Tausende von Elementen navigieren.

Speicherverwaltung

Da Sie den gesamten Datensatz im Widget verwalten, müssen Sie auf die Speichernutzung achten, insbesondere auf Mobilgeräten oder bei der Verarbeitung großer Listen. Die Verwendung der Paginierung mildert das Problem.

Aktionsvariablen

Ab Version 10.21.0 ist es möglich, Aktionsvariablen zu verwenden, was die Implementierung einfacher macht als zuvor. In früheren Versionen konnte das MF hinter einer Aktion keine Parameter haben und das MF musste den Wert der Dummy-Objekte selbst abrufen.

Konfigurationskomplexität

Diese zusätzlichen Einstellungen machen die Einrichtung des Widgets schwieriger für Mendix Entwickler benötigen ein solides Verständnis mehrerer wichtiger Konfigurationen. Entwickler müssen lernen, Dummy-Objekte für die Datenübertragung zu konfigurieren, geeignete Mikroflüsse für verschiedene Aktionen zu erstellen und eine ordnungsgemäße Fehlerbehandlung für fehlgeschlagene Vorgänge sicherzustellen. Darüber hinaus erfordert die Aufrechterhaltung der Datenkonsistenz, wenn mehrere Benutzer dieselben Elemente bearbeiten, besondere Sorgfalt und Planung.

Vorteile

Vollständige Rendering-Kontrolle
Das Widget hat die vollständige Kontrolle über die Listendarstellung (Karten, vertikale, horizontale Layouts, benutzerdefinierte Animationen, Drag-and-Drop-Schnittstellen).

Erweiterte Filterung und Sortierung
Das Widget kann komplexe Sortieralgorithmen, mehrspaltige Sortierung und erweiterte Filteroptionen implementieren, die über den Standard hinausgehen Mendix Funktionen.

Einheitliches Styling
Es ist einfacher, die Stilkonsistenz der gesamten Komponente aufrechtzuerhalten, da alles in einem Widget enthalten ist.

Benutzerdefinierte Interaktionen
Kann erweiterte Benutzerinteraktionen wie Massenvorgänge, Tastaturkürzel und komplexe Auswahlmuster implementieren.

Nachteile

Monolithische Komplexität
Erstellt eine monolithische Struktur mit erhöhter Komplexität innerhalb des Widget-Codes, was die Wartung und Fehlerbehebung erschwert.

Leistungsimplementierungsaufwand
Es erfordert erheblichen Aufwand, Paginierung, Sortierung, Filterung und Lazy-Loading-Verhalten effizient zu implementieren.

Herausforderungen bei der Styling-Integration
Es ist schwieriger, den Widget-Stil an das allgemeine Designsystem und die Themenänderungen der App anzupassen.

Komplexe Einrichtungsanforderungen
Komplexes Setup für Mendix Entwickler, die Dummy-Objekte, mehrere Mikroflüsse und ein Verständnis des internen Datenflusses des Widgets erfordern.

Testkomplexität
Es ist schwieriger, einzelne Funktionen zu testen, da alles innerhalb einer Komponente eng miteinander verbunden ist.

Ansatz 2: Listenelement-Widget

Eine weitere Möglichkeit besteht darin, MendixDie integrierten Listenkomponenten von , wie z. B. die Galerie Widget, Listenansicht oder Datenraster. In diesem Fall erstellen Sie nur das Element-Widget und verwenden es innerhalb des Listencontainers, der von Mendix.
Dieser Ansatz trennt grundsätzlich die Belange verschiedener Komponenten. Die Mendix Das Listen-Widget übernimmt alle komplexen Aufgaben der Listenverwaltung: Paginierung, Lazy Loading, Sortieren und Filtern. Da diese Steuerelemente und Muster vertraut sind Mendix Für Entwickler wird die Einrichtung deutlich einfacher und folgt etablierten Mustern.

Nutzung MendixIntegrierte Optimierungen

Durch die Nutzung MendixMit den nativen Listenkomponenten von profitieren Sie automatisch von:

  • Optimierter Datenabruf: Mendix implementiert automatisch effiziente Datenabrufmuster, einschließlich der Abrufen und Aggregieren Optimierung, die Datenbankabfragen reduziert, wenn Sie nur Zählungen und keine vollständigen Datensätze benötigen.
  • Integrierte Paginierung: Native Paginierungsverwaltung mit konfigurierbaren Seitengrößen, wodurch die Serverlast reduziert und die clientseitige Leistung verbessert wird.
  • Lazy Loading: Automatisches Lazy Loading von Daten beim Scrollen des Benutzers, wodurch unnötiger Datenabruf verhindert und die anfänglichen Ladezeiten der Seite verbessert werden.
  • Caching-Mechanismen: Mendix implementiert intelligente Caching-Strategien, die redundante Serveranforderungen reduzieren.

Vereinfachtes Datenmanagement

Das Hinzufügen neuer Elemente können Sie außerhalb des Widgets erledigen, indem Sie eine Popup-Seite, ein Modal oder eine Navigation zu einem separaten Formular anzeigen. Dieser Ansatz bietet mehrere Vorteile:

  • Bekannte Muster: Mendix Entwickler können standardmäßige Seitenlayouts, Formularvalidierungen und Stilansätze verwenden, die sie bereits kennen.
  • Zugriffskontrolle: Einfachere Implementierung einer rollenbasierten Zugriffskontrolle durch Mendixintegrierte Sicherheitsfunktionen von .
  • Formularvalidierung: Kann nutzen MendixValidierungsrahmen und Fehlerbehandlungsmechanismen von.
  • Responsive Design: Profitiert automatisch von Mendixs Responsive Design-Funktionen.

Bearbeitbare Datenverarbeitung

Bei diesem Ansatz, alle Elemente werden editierbar (abhängig von den Objektzugriffsberechtigungen des Benutzers). Innerhalb des Widgets wird die Implementierung der Aktualisierungslogik deutlich einfacher:

  • Direkte Objektmanipulation: Kann Objektattribute direkt ändern, ohne dass Dummy-Objekte erforderlich sind.
  • Vereinfachte Mikroflüsse: Der Mikrofluss für Änderungen ist unkompliziert – er muss lediglich das Objekt festschreiben, ohne dass zusätzliche Dummy-Parameter für Vorgänge erforderlich sind.
  • Echtzeit-Updates: Änderungen können ohne komplexe Statusverwaltung sofort in der Benutzeroberfläche angezeigt werden.
  • Validierungsintegration: Kann nutzen Mendixintegrierte Validierungsregeln und Fehlerbehandlung.
Vorteile

Vereinfachte Wartung
Deutlich einfachere Widget-Wartung mit reduzierter Codekomplexität und weniger potenziellen Fehlerquellen

Standardleistungsmuster
Verwendet bewährte, optimierte Verfahren für Paginierung, Sortierung, Filterung und Lazy Loading, die kontinuierlich verbessert werden durch Mendix

Designsystemintegration
Einfachere Anpassung des Widget-Stils an das Designsystem der App, automatische Themenunterstützung und konsistente Benutzererfahrung

Entwicklerfreundliches Setup
Vereinfachte Einrichtung für Mendix Entwickler – keine Notwendigkeit für zusätzliche Dummy-Objekte, komplexe Microflow-Konfigurationen oder Kenntnisse der internen Widget-Datenflüsse

Bewährte Skalierbarkeit
Vorteile von Mendixgetestete und optimierte Listenverarbeitungsfunktionen, die sich gut mit großen Datensätzen skalieren lassen

Einhaltung der Barrierefreiheit
Automatische Vererbung MendixBarrierefreiheitsfunktionen und Einhaltung von Webstandards

Nachteile

Eingeschränkte Rendering-Kontrolle
Reduzierte Kontrolle über Listen-Rendering-Optionen (beschränkt auf Mendixintegrierte Layoutoptionen von)

Anpassungsbeschränkungen
Kann keine hochgradig benutzerdefinierten Interaktionen oder Layouts implementieren, die über MendixStandardfunktionen von

Einschränkungen bei erweiterten Funktionen
Unterstützt möglicherweise keine erweiterten Funktionen wie komplexes Drag-and-Drop, benutzerdefinierte Sortieralgorithmen oder einzigartige Interaktionsmuster

Ansatz 3: Mehrere Widgets

Die dritte Option besteht darin, mehrere miteinander verbundene Widgets zu erstellen: ein Container-Widget, das die Liste der Elemente darstellt, und ein oder mehrere Element-Widgets, die einzelne Todo-Elemente darstellen. Dieser Ansatz ist besonders wertvoll, wenn Sie Funktionen benötigen, die in Mendixintegrierte Listenkomponenten, wie erweiterte Drag-and-Drop-Funktionen, benutzerdefinierte Layoutalgorithmen oder komplexe Interaktionen zwischen Elementen.


Dieser Ansatz ermöglicht auch eine bessere Planung und iterative Entwicklung. Sie können entscheiden, welche Teile benutzerdefinierte Widgets benötigen und welche nutzen können MendixIntegrierte Komponenten von . Beim Iterieren von Funktionen können Sie Komponenten nach Bedarf ersetzen, ohne das gesamte System neu erstellen zu müssen.

Vorteile der Skalierbarkeit und Wiederverwendbarkeit

In unserer alle Wenn wir beispielsweise das Container-Widget erstellen, können wir das Element-Widget aus unserem zweiten Ansatz oben wiederverwenden. Anschließend können wir innerhalb des Container-Widgets erweiterte Funktionen hinzufügen, wie zum Beispiel:

  • Erweitertes Drag-and-Drop: Multidirektionales Ziehen, Ablagezonen mit visuellem Feedback und komplexer Neuordnungslogik
  • Benutzerdefinierte Layout-Algorithmen: Mauerwerk-Layouts, dynamische Größenanpassung basierend auf dem Inhalt oder algorithmische Positionierung
  • Massenvorgänge: Mehrfachauswahlfunktionen, Stapelbearbeitung und komplexe Auswahlmuster
  • Zusammenarbeit in Echtzeit: Live-Updates, wenn mehrere Benutzer dieselbe Liste bearbeiten
  • Erweiterte Filterung: Benutzerdefinierte Filteroberflächen, gespeicherte Filtervoreinstellungen und komplexe Abfragegeneratoren

Der Multi-Widget-Ansatz bietet eine bessere Skalierbarkeit und Trennung der Belange. Sie müssen jedoch mit einer erhöhten Implementierungskomplexität rechnen, um Komponenten wirklich wiederverwendbar und generisch zu machen.
Ohne die richtige Abstraktion und Gestaltung wird die Wiederverwendbarkeit eingeschränkt und die Wartung schwieriger.

Überlegungen zur Implementierungskomplexität

Darüber hinaus ergeben sich erhebliche Herausforderungen, wenn mehrere Widget-Instanzen auf derselben Seite miteinander kommunizieren müssen:

  • Statussynchronisierung: Sicherstellen, dass alle Widgets bei Datenänderungen synchron bleiben
  • Ereigniskoordination: Verwalten komplexer Ereignisketten zwischen Widgets
  • Leistungsoptimierung: Vermeidung unnötiger Neurenderungen und Datenabrufe
  • Fehlerbehandlung: Fehler in einem Widget ordnungsgemäß behandeln, ohne andere zu beeinträchtigen
  • Konfiguration des absetzbaren Bereichs: Implementierung des Vorschaumodus im Widget, um eine Vorschau des absetzbaren Bereichs in Studio Pro anzuzeigen

Herausforderungen bei der Staatsverwaltung

Signalisierung und Statusverwaltung zwischen Widgets

Eine der größten Herausforderungen bei der Verwendung mehrerer Widgets ist die Kommunikation zwischen den Widgets und die Statusverwaltung. Wenn Widgets den Status der anderen Widgets kennen müssen – beispielsweise wenn ein Benutzer ein Element in einem Kanban-Board von einer Spalte in eine andere zieht –, ist ein robuster Kommunikationsmechanismus erforderlich. Ein Widget muss das Element ausblenden, während ein anderes es anzeigt. Dabei muss die Datenkonsistenz gewahrt und ein reibungsloses Benutzerfeedback gewährleistet sein.
Dies erfordert einen komplexen Datenfluss und eine Synchronisierung zwischen Widgets, was nicht einfach ist und spezielle Implementierungstechniken sowie eine sorgfältige Berücksichtigung von Randfällen erfordert.

Datenflussmuster

Bei mehreren Widgets funktioniert die Datenbereitstellung ähnlich wie bei einzelnen Widgets. Sie müssen jedoch zuverlässige Muster für die Datenübertragung zwischen Widgets festlegen. Sie können ein Container-Widget verwenden, das untergeordnete Widgets enthält. Dabei sind jedoch wichtige Einschränkungen zu beachten.

Während React-Entwickler davon ausgehen, dass sie Props von übergeordneten an untergeordnete Komponenten weitergeben können, ist dies in Mendix Plug-in-Widgets. Wenn Sie ein anderes Widget innerhalb eines übergeordneten Widgets rendern, Mendix Die Laufzeit überschreibt alle von Ihnen übergebenen Props mit Daten aus den in Studio Pro konfigurierten Widget-Einstellungen. Dies bedeutet, dass Sie Daten nicht dynamisch durch den Komponentenbaum übergeben können, wie Sie es in einer typischen React-Anwendung tun würden.

Alternative Kommunikationsmethoden

Stattdessen benötigen Sie alternative Methoden zum Teilen von Daten zwischen Widgets:

Gemeinsame Attribute:
  • Schreiben Sie in ein Attribut in einem Widget, das ein anderes Widget lesen kann
  • Wenn sich das Attribut ändert, wird das zweite Widget automatisch neu gerendert, da sich seine Eigenschaften geändert haben.
  • Bietet automatische Reaktivität, kann aber bei häufigen Updates zu Leistungsproblemen führen
  • Am besten geeignet für einfache Statusfreigabe, wie ausgewählte Elemente oder Filterwerte
React-Kontext:
  • React 18 führte einen Kontext für die Statusverwaltung ein (zuvor waren dafür Drittanbieterbibliotheken wie Redux erforderlich).
  • Da alle Mendix Widgets auf einer Seite werden vom selben React DOM gerendert, der Kontext kann zwischen ihnen geteilt werden
  • Sie können einen Kontextanbieter in einem Widget erstellen und ihn in anderen verwenden
  • Ideal für komplexes Zustandsmanagement und zur Vermeidung von Prop Drilling
  • Erfordert eine sorgfältige Einrichtung, um Speicherlecks zu verhindern und eine ordnungsgemäße Bereinigung sicherzustellen
API für das Posten von Nachrichten:
  • Dieser etablierte Mechanismus nutzt die window.postMessage API um Ereignisse über die Seite zu senden
  • Widgets können diese Ereignisse unabhängig von ihrer Position abonnieren, sogar über Iframes hinweg
  • Bietet eine lose Kopplung zwischen Widgets, erfordert jedoch eine sorgfältige Benennung der Ereignisse und eine sorgfältige Nutzlaststruktur
  • Am besten für Einwegkommunikation und Eventübertragung
  • Kann über verschiedene Seiten oder sogar verschiedene Anwendungen hinweg funktionieren

Styling-Herausforderungen

Das Styling wird mit mehreren Widgets deutlich komplexer. Wenn Sie CSS-Stylesheets in einem Widget haben, auf die Sie von anderen Widgets aus zugreifen möchten, müssen Sie Ihre Styling-Architektur sorgfältig planen:

Gemeinsam genutzte Repository-Struktur:
  • Verwenden Sie eine größere Repository-Struktur, auf die beide Widgets zugreifen können
  • Implementieren Sie einen Build-Prozess, der gemeinsame Stile nutzen kann
  • Erfordert Koordination zwischen Widget-Entwicklungsteams
  • Kann zu Problemen bei der Versionssynchronisierung führen
Designsystemintegration:
  • Verlagern Sie das Styling vollständig aus dem Widget und überlassen Sie es Ihrem Designsystem.
  • Verwenden Sie Klassen aus dem Designsystem im Widget und dokumentieren Sie das Designsystem-Styling als indirekte Abhängigkeit
  • Bietet bessere Konsistenz, erfordert aber ein ausgereiftes Designsystem
  • Kann die Anpassungsoptionen für einzelne Widgets einschränken
Modulbasiertes Publizieren:
  • Veröffentlichen Sie Ihr Widget als Modul und nicht als eigenständiges Widget
  • Dies ermöglicht den Export von CSS-Dateien, die zwischen Widgets geteilt werden können
  • Bietet mehr Flexibilität, erschwert aber den Veröffentlichungs- und Vertriebsprozess
  • Erfordert Verständnis von Mendix Modulentwicklungsmuster

Komplexität der Einrichtung und Erfahrung des Entwicklers

Für Mendix Für Entwickler ist die Einrichtung mehrerer Widgets deutlich anspruchsvoller als die Konfiguration eines einzelnen Widgets. Die Komplexität zeigt sich in mehreren Aspekten:

Konfigurationsabhängigkeiten:
  • Mit einem Widget haben Entwickler eine unkomplizierte Datenquellenkonfiguration
  • Bei mehreren Widgets müssen sie das spezifische Muster verstehen und befolgen, das in Ihrer Entwicklung verwendet wird
  • Eine falsche Konfiguration kann zu Funktionsstörungen oder schlechter Leistung führen
Anforderungen an die Datenstruktur:
  • Mehrere Widgets erfordern oft spezifische Datenstrukturen und Beziehungen
  • Entwickler müssen verstehen, wie Widgets kommunizieren und welche Daten jedes Widget erwartet
  • Dokumentation wird für eine erfolgreiche Implementierung entscheidend
Einsatzkoordination:
  • Alle zugehörigen Widgets müssen zusammen bereitgestellt werden, um die Kompatibilität sicherzustellen
  • Versionskonflikte zwischen Widgets können Laufzeitfehler verursachen
  • Erfordert sorgfältiges Release-Management und Testverfahren
Komplexität des Debuggens:
  • Probleme können sich über mehrere Widgets erstrecken, was das Debuggen schwieriger macht
  • Entwickler müssen das gesamte Widget-Ökosystem verstehen, um Probleme zu beheben
  • Erfordert umfassende Protokollierung und Fehlerbehandlung für alle Widgets

Leistungsüberlegungen

Mehrere Widgets führen auch zu Leistungsaspekten, die bei einzelnen Widgets nicht bestehen:

  • Render-Koordination: Das gleichzeitige erneute Rendern mehrerer Widgets kann zu Leistungsengpässen führen
  • Speicherverwaltung: Jedes Widget behält seinen eigenen Status bei, was möglicherweise zu einer erhöhten Speichernutzung führt
  • Netzwerkoptimierung: Mehrere Widgets, die gleichzeitig API-Aufrufe durchführen, können den Server überlasten
  • Ereignisbehandlung: Komplexe Ereignisketten zwischen Widgets können Leistungsprobleme verursachen, wenn sie nicht richtig optimiert werden

Trotz dieser Herausforderungen kann der Ansatz mit mehreren Widgets bei richtiger Implementierung äußerst leistungsstark sein. Er bietet die Flexibilität, anspruchsvolle Benutzeroberflächen zu erstellen und gleichzeitig die Modularität und Wiederverwendbarkeit des Codes zu wahren. Der Schlüssel liegt darin, die Architektur im Vorfeld sorgfältig zu planen und klare Muster für Kommunikation, Styling und Datenmanagement zu etablieren.

Beispiele für alle drei Ansätze

Zum Vergleich habe ich drei To-do-Listen-Showcase-Widgets mit allen oben genannten Ansätzen implementiert. Der Code wurde hauptsächlich durch Vibe-Codierung mit Copilot generiert. Ich habe die Anforderungen und die erwartete Funktionalität abgefragt und diese dann iteriert, um das gewünschte Ergebnis zu erhalten. Beachten Sie, dass diese Repositories nur Showcase-Beispiele sind und keine Qualitätskontrollen für den Einsatz in der Produktion bestanden haben.

Ich hoffe, dieser Artikel hat Ihnen ein besseres Verständnis von Mendix Widget-Architektur und zeigt, warum ein umfassendes Verständnis der Plattform, das über die bloße Codegenerierung hinausgeht, für die Erstellung außergewöhnlicher benutzerdefinierter Lösungen wirklich unverzichtbar ist.

Häufig gestellte Fragen

Wählen Sie Ihre Sprache