Herzstück ist die Binary der Routingtable
Über dem Class-Routing wird dem Webserver mitgeteilt, welche URLs an welche Progammiersprache zu routen sind:
# Entwicklung in C
RewriteRule \.chtml$ /cgi-cpp/fwcpp.exe [L]
# PHP
RewriteRule \.(htm|phtml)$ /bootstrap.php [L]
# Perl
RewriteRule !\.html$ /cgi-bin/fwperl.cgi [L]
Das ist die Grundidee hinter meinen Web-Application Framework: Zum Einen die Wahl der Programmiersprache und zum Anderen die Integrität von Anwendungen die in verschiedenen Programmiersprachen entwickelt sind.
Gegenüber C bietet C++ wesentlich mehr Komfort. Insbesondere in Sachen kompexer Datenstrukturen lässt sich C++ genauso verwenden wie PHP und Perl. Hinzu kommt die Objektorientierung in C++ und so besteht der erste Schritt einer in C++ entwickelten Anwendung darin, die mit Perl und PHP gemeinsam benutzte Routingtable auch in einer C++ Anwendung verfügbar zu machen. Die Datenstruktur in der Routingtable entspricht dem Muster Entity/Attribute/Value
(EAV), Beispiel:
class: HTMLfile
descr: Entdecken Sie die Vielfalt meiner Interessen die auch Ihre sein könnten!
file: home.html
interface: date
short: Startseite
title: Modern Web Application Framework in Perl, PHP und in C
url: /index.html
Die Entity ist im Beispiel der URL /index.html
und gut zu sehen ist die Bindung dieses URL an die Klasse HTMLfile
. Diese Konfiguration zu jedem einzelnen URL liegt als Binary vor und kann mit Perl, mit PHP und auch mit C++ eingelesen werden. Damit hat das Response-Objekt welches bei jedem Request erstellt wird, wahlfreien Zugriff auf alle zur Erstellung einer Response erforderlichen Daten.
; URL c++
[/form.chtml]
title = Web Formular und eine class CGI in c++
descr = CGI/HTML Formulare mit C++ verarbeiten
file = /form.chtml
parent = /cpp
class = Form
Datenschutzerklärung: Diese Seite dient rein privaten Zwecken. Auf den für diese Domäne installierten Seiten werden grundsätzlich keine personenbezogenen Daten erhoben. Das Loggen der Zugriffe mit Ihrer Remote Adresse erfolgt beim Provider soweit das technisch erforderlich ist. sos@rolfrost.de.