Zum Inhalt springen

„Dynamic Code Programming“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[ungesichtete Version][ungesichtete Version]
QS+
K Hydro verschob die Seite Dynamic Code Programming (DCP) nach Dynamic Code Programming: doppelmoppel
(kein Unterschied)

Version vom 9. Juli 2014, 11:56 Uhr

Dieser Artikel wurde am 9. Juli 2014 auf den Seiten der Qualitätssicherung eingetragen. Bitte hilf mit, ihn zu verbessern, und beteilige dich bitte an der Diskussion!
Folgendes muss noch verbessert werden: WP:Vollprogramm. XenonX3 – () 11:55, 9. Jul. 2014 (CEST)

DCP ist eine Dynamisierung von objektorientierte Programmierung (OOP) oder serviceorientierte Programmierung (SOP), beide Typen des Softwaredesigns können in DCP integriert werden. Grundsätzlich wird beim DCP bestehender Code modular von einem Controller geladen. Dieser Controller entscheided je nach Aufruf bzw. Parameterisierung, welche Module zu laden und evtl. zu instanziieren sind, bestimmt im Zweifel auch die zugehörigen Parameter für die Instanziierung bzw. den Aufruf der Methode oder der Software. Beim DCP gibt es keine statische Struktur, die definiert wie der Programmablauf auszusehen hat, vielmehr wird hier auf Basis einer Konfiguration und den Rückmeldungen der einzelnen Aufrufschritte dynamisch entschieden, welcher Schritt als nächstes durchgeführt wird. Jeder Schritt ist ein weiterer Zweig, der in den bisherigen Standards (OOP/SOP) fest verankert war. Beim DCP wird der Ablauf jedoch zum Beispiel in einer Konfigurationsdatei oder einer Datenbank festgehalten.

Beispiel bei einer Webapplikation

Es existiert eine Seite A, die als File auf dem Server liegt. In der Datenbank steht die Anweisung für den Controller, beim Aufruf von /index.html diese Seite zu laden und auszuliefern. Falls jetzt ein User einen Request auf /index.html absetzt, liefert der Controller die Seite aus.

Ändert man den Datenbankeintrag nun ab und setzt im Ablaufschritt 1 eine Userprüfung ein sowie als Failover für die Userprüfung eine Login-Seite, würde ein nicht angemeldeter User zunächst die definierte Login-Seite sehen und müsste sich anmelden. Schlägt die Anmeldung fehl oder ist der User nicht berechtigt, die Seite zu sehen, wird eine entsprechende Fehlermeldung ausgegeben und der User verbleibt auf der Login-Seite. Bei Erfolg sieht der User die angeforderte Seite.

Um Seiten nur für bestimmte User zugänglich zu machen, braucht man je nach Datenbankdesign und Codeaufbau nur noch einen Datenbankeintrag machen und muss nichts am eigentlichen Programmcode ändern.

Beispiel für eine Formulargenerierung

Bei der Anwendung von DCP für die Formulargenerierung gibt es eine zugrunde liegende Datensatzstruktur und evtl. zusätzliche Parameter, die beeinflussen, wie das Formular später aussieht. Zusätzlich zur Datensatzstruktur gibt es bei Bedarf direkte oder sprachabhängige Übersetzungen, die genutzt werden um die Namen für die Eingabefelder sowie etwaige Zusatztexte zu definieren. Ausserdem wird über eine Typenzuordnung des Datentyps zum Formularfeldtyp entschieden, welche Art Formularfeld hier verwendet wird.

Im Falle der Definition der Datensatzstruktur in der Datenbank, würde man einfach die Zieldatentabelle als Grundlage nutzen. Auf diese Art und Weise kann man die Tabelle jederzeit anpassen und das Formular würde sich dann automatisch ändern sowie die neuen Daten damit abfragen.