Modularität-Glossar
1. Grundbegriffe
Domain-Modellierung
Tabellen, Felder und Skripte so entwerfen, dass sie realen Objekten in einem einzelnen Geschäftsbereich entsprechen. Ein klares Domain-Modell macht Module leicht lesbar und gut erweiterbar.
Lose Kopplung
Eine Designregel: Nur das Minimum an Feldern freigeben, damit Module nur von der Schnittstelle abhängig sind und nicht voneinander. Je weniger Felder Sie freigeben, desto einfacher sind Updates, Wiederverwendung und der Austausch eines Moduls.
Modul
Eine in sich geschlossene Ninox-Datenbank, die ausgewählte Daten oder Logik über Schnittstellen freigibt, sodass sie wiederverwendet, aktualisiert und monetarisiert werden kann, ohne verbundene Systeme zu beinträchtigen.
Modulschnittstelle
Der standardisierte Verbindungspunkt, der kontrollierten Zugriff auf die Daten eines Moduls ermöglicht und dabei die Kapselung wahrt.
Schnittstellenname
Die eindeutige Bezeichnung der Schnittstelle – sichtbar für Autorinnen und Verbraucher; auf der Verbraucherseite erscheint sie als Modulname. Dieser Name identifiziert die Schnittstelle auf API-Ebene: Eine Umbenennung erzeugt eine neue Schnittstelle, unterbricht bestehende Verbindungen und erfordert ein Update bei allen Verbraucherinnen.
Aufgabentrennung
Die Praxis, jedem Modul eine einzige, klar definierte Aufgabe zuzuweisen und alles andere zu verbergen. Das senkt die Komplexität und hilft Teams, parallel zu arbeiten.
2. Rollen
Endnutzer
Arbeitet mit der fertigen Ninox-Lösung; weiß möglicherweise nicht, dass Module enthalten sind.
Modulautor
Erstellt die Anbieterdatenbank, gibt Elemente frei, versioniert die Schnittstelle und veröffentlicht (letztendlich) das Modul.
Modulverbraucher
Installiert das Modul, verbindet sich mit seiner Schnittstelle und erweitert es in der eigenen Ninox-App.
3. Datenbanken und Tabellen
Untergeordnete Datenbank (Child-Datenbank)
Eine Verbraucherdatenbank, die sich mit der Schnittstelle einer Anbieterdatenbank verbindet. Ninox erstellt externe Tabellen – Live-Replikate der Anbieterdaten.
Externe Tabelle
Eine Tabelle, die Ninox in einer untergeordneten Datenbank für jede von der Anbieterdatenbank freigegebene Tabelle automatisch anlegt. Solange die Schnittstelle verbunden ist, bleibt die externe Tabelle eine Live-Replik der Anbieterdaten. Nach dem Trennen verbleibt die Tabelle mit allen Daten in der untergeordneten Datenbank, synchronisiert jedoch nicht mehr und verhält sich wie eine normale lokale Tabelle.
Tabellen-/Feldname
Beschriftung, die nur für Modulautorinnen sichtbar ist. Sie kann jederzeit geändert werden und wird den Verbrauchern nie angezeigt.
Öffentlicher Tabellen-/Feldname
Bearbeitbare Beschriftung, die eine Verbraucherin für eine Tabelle oder ein Feld sieht. Eine Umbenennung ändert nur die Beschriftung; die zugrunde liegende System-ID bleibt unverändert.
Feldtyp
Eine von drei Kategorien: Daten, Layout, Beziehung. Derzeit können nur Datenfelder freigegeben werden. Felder für Beziehungen, Formeln, Bilder/Dateien und dynamische Auswahl sind in Planung.
Anbieterdatenbank
Die Quelldatenbank, die die maßgeblichen Tabellen und Felder enthält und diese über eine Schnittstelle freigibt.
4. Aktionen an der Schnittstelle
Freigeben (expose)
Interne Tabellen oder Felder über eine Schnittstelle öffentlich zugänglich machen – jeweils mit einem eindeutigen öffentlichen Namen. Freigeben definiert, was geteilt werden kann.
Bereitstellen (provide)
Stellt Live-Daten oder Logik über eine bereits freigegebene Schnittstelle bereit, sobald Verbraucher verbunden sind. Bereitstellen liefert die geteilten Daten.
Veröffentlichen (publish)
Das Modul (inklusive Schnittstelle) paketieren, damit es geteilt oder in einem anderen Arbeitsbereich importiert werden kann.
5. Datenfluss und Berechtigungen
Leserechte (Schnittstelle)
Standardberechtigung für ein freigegebenes Feld oder eine freigegebene Tabelle. Untergeordnete Datenbanken können die Anbieterdaten sehen, aber nicht ändern. Jedes freigegebene Element hat mindestens Leserechte; Schreibrechte müssen ausdrücklich gewährt werden.
Schreibrechte (Schnittstelle)
Erlaubt einer untergeordneten Datenbank, Anbieterdaten über die Schnittstelle zu ändern. Die Anbieterdatenbank besitzt stets Schreibrechte; mit dieser Einstellung erhalten sie zusätzlich die untergeordneten Datenbanken.