hotti: MySQL, PHP, cpp & Datenübergabe

Beitrag lesen

Hi!

Serialize auf Byte-Ebene, damit kommen sowohl php als auch cpp klar.
Damit hat man Aufwand auf beiden Seiten, vor allem bei den komplexen Datentypen, weil man sich dabei auch mit Rekursion rumschlagen muss,
Eine Config, die rekursiv geparst werden muss, ist schlecht durchdacht.

Achwas. Alles flach zu strukurieren ist auch nicht der Weisheit letzter Schluss.

Eine Config, die rekursiv geparst werden muss ist nicht nur schlecht durchdacht, sondern unpraktikabel, wenn nicht sogar unbrauchbar. Best Practice: Die Daten stehen in festen Feldern like this:

'Authorization' => $cfg->{http}->{auth},  

Hast du dir mal eine 'objects.C' angeschaut? Das ist die Config einer Checkpoint-Firewall. Die ist 'flach' und somit gut zu parsen ohne Rekursion.

Zudem schrieb er bereits, dass er Arrays hat, damit braucht er zumindest eine Iteration,

folders => 'foo bar baz', da geht auch ein split um ein Array zu erzeugen.

Eine maschinenlesbare Konfiguration ist nicht für Außenstehende bestimmt.

Es geht mir dabei vor allem um nachfolgende Arbeiter an dem Projekt, oder andere Personen, die sich einarbeiten müssen. "Außenstehende" war nicht richtig formuliert.

Aber ich weiß was du meinst und irgendwie muss eine Config ja auch von der Tastatur kommen. Ich hatte mal genau dasselbe Problem, eine Config, die sowohl php als auch Perl lesen muss; das war im ersten Schritt eine ini-Datei, dafür gibt es in beiden Sprachen eine vorzügliche API. Allerdings musste ich ein Quoting einführen like

[/index]
title="Starseite der Webpräsenz"

und bei vielen [URLs] ist das dann ätzend langsam geworden auf beiden Seiten php/Perl. Die ini-Datei habe ich beibehalten zum Editieren, aber es gab dann einen Zwischenschritt, der aus der ini eine maschinenlesbare Binary erzeugt hat und damit war die Performance ausgezeichnet.

Hotti