BindKraft vereint ein clientseitiges und ein serverseitiges Framework, um größtmögliche Flexibilität zu bieten.
Die Client-Seite ist ein JavaScript-Framework. Dies ermöglicht das schnelle und leichte Erstellen, Anordnen und Steuern von Ansichtsordner und Steuerelementen. Es bietet eine halbpassive Bindung von Daten an die Ansicht, die im Markup codiert wird. Folglich ist es unendlich flexibel und lässt sich auf vielen verschiedenen Arten und Weisen verwendet werden.
Wiederverwendbarkeit, Erweiterungsmöglichkeiten und Zukunftsfähigkeit waren Kernziele, die während des Entwicklungsprozesses ständig berücksichtigt wurden. Das Framework ist komplett in OOP JavaScript geschrieben und hat die übliche Vererbung der Klassen und Interfaces. Zusätzlich aber fügt es auch Interface-Implementierer und Helfer ein, um etwas zu gestalten, was wir Hybrid-Vererbung nennen. Diese bietet dem Entwickler die meisten Vorteile der Mehrfachvererbung, zusammen mit der gesamten logischen Struktur von Einzelklassenvererbung.
Die Server-Seite bietet ein erweiterbares Back-End, das die Anbindung in fast alle modernen Datenquellen erlaubt. Es basiert auf .NET Core, sodass es auf mehreren Betriebssystemen verfügbar ist.
Das Ziel des Frameworks ist es, einen Kernsatz von Features anzubieten, die schnell und zuverlässig funktionieren, zusammen mit einer Erweiterungsmöglichkeit in Form von benutzerdefinierten Plugins, die sich in die von uns definierte Pipeline binden lassen. Mittels benutzerspezifischer TreeNodes (Knotenstruktur in JSON) kann es mit jeder beliebigen Datenbank-Technologie verwendet werden und bietet sogar die Möglichkeit, nicht nur Dateien zu lesen, sondern auch dazu zu schreiben. Alle vom Client kommenden Anfragen werden asynchron verarbeitet, was eine Batch-Request-Verarbeitung bietet. Das Ergebnis für jedes Batch wird auf dem Server gehalten, bis das ganze Batch bearbeitet wurde und dann wird die Antwort dem Client geschickt.
Falls es eine bestimmte Technologie gibt, die wir nicht unterstützen, bieten wir eine Erweiterungsmöglichkeit in Form von benutzerdefinierten Plugins an. Sie können Unterstützung für Ihre eigene Back-End-Technologie hinzufügen und diese einfach zu unserer Ausführungspipeline verbinden. Sie können auch festlegen, welche Daten-Loader Sie in dem TreeNode möchten - schreiben Sie einfach Ihr benutzerspezifisches Plugin und verweisen Sie es auf Ihren TreeNode.