xml against ini

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
HeX0R
Beiträge: 3042
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

xml against ini

Beitrag von HeX0R »

Moin,

da es bei uns im G'schäft mitlerweile auch zum guten Ton gehört, jede noch so verblödete Software mit xml anstatt ini-Dateien auszurüsten, bin ich auf die Idee gekommen mal nach dem tieferen Sinn zu forschen.

Ini-Dateien sind für mich Mit-DOS-Aufgewachsenem Alten die besser strukturiertere Alternative.
Irgendwie bleibt mir der wesentliche Vorteil von xml-Dateien (bisher) völlig verborgen.

Sollte der einzige Vorteil sein, dass ich sie in einem Browser anschauen kann ?
Oberflächlich betrachtet finde ich inis viel besser durchschaubar als xmls.

Lasse mich da aber gerne eines besseren belehren (Kiffi als (alter) xml-Befürworter ?).

Sind xmls etwa auch nur ein Es-wird-Zeit-für-ein-neues-Format-Placebo, oder kann mich jemand von dem tatsächlichen Sinn überzeugen ?
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Ich würd mal sagen, XML ist ein bißchen Objekt-orientierter. Du kannst pro "Objekt" mehrere Eigenschaften festlegen usw. und Du hast den Vorteil, daß jeder Tag, der geöffnet wurde, auch wieder geschlossen wird. Damit tust Du Dir beim durchforsten möglicherweise etwas leichter.

Ich selbst hab bisher noch kein XML verwendet, aber ich denk mal, ich würd es ab einer gewissen Dateigröße tun. Wenn Du nur 10 Optionen speichern willst, die in Deinem Programm geändert werden können, dann würd ich bspw. auf XML eher verzichten.

Gut ist XML sicherlich auch, um im Programm selbst Anpassungen zu "skripten", bspw. könnte man eine MenuBar oder sowas ziemlich gut in XML-Form definieren und diese dann ganz leicht anpassen.
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

Wenn man mal zum Kiosk um die Ecke muss, dann nimmt man ein
Fahrrad. Sollte man in der Situation sein, möglichst schnell von Hamburg
nach München fahren zu wollen, würde man einen Sportwagen
bevorzugen. Und wenn man umziehen sollte, müsste man hierfür
optimalerweise einen LKW benutzen.

Genauso verhält es sich, wenn es darum geht, Daten zu lesen, zu
verarbeiten und zu speichern. Je nachdem, um welche Daten es hierbei
geht, wählt man die geeignete Technologie.

Musst Du einige wenige Parameter Deines Programmes speichern, so ist
die Entscheidung, INI-Dateien zu verwenden, sicherlich nicht falsch.

Andererseits gibt es Szenarien, da kommt man mit INI-Dateien schon arg
in's Schwitzen. Nehmen wir an, Du musst den aktuellen Zustand eines
TreeGadgets in Deinem Programm speichern, um ihn beim nächsten
Programmstart wiederherzustellen:

Code: Alles auswählen

<item text="node" status="expanded">
	<item text="subnode1" status="expanded|selected">
		<item text="subsubnode1" />
		<item text="subsubnode2" status="checked" />
		<item text="subsubnode3" />
	</item>
	<item text="subnode2" />
</item>
Das schöne daran ist: Du kannst (ohne dass ich Dir die obige
Datenstruktur grossartig erklären müsste) Dein TreeGadget in dieser
Struktur problemlos wiederfinden.

Wie würdest Du Deine INI gestalten, um obiges darzustellen? Wie gross
wäre der Aufwand einer Anpassung, wenn Du plötzlich bemerkst, dass Du
Deinem bestehenden System ein weiteres Attribut hinzufügen müsstest
(beispielsweise das GadgetData, das mit PB4 eingeführt wurde)?

Ein wichtiges Thema in Bezug auf XML: Datenaustausch:

Ein echtes Killerfeature, dass mit XML daherkommt, ist die sogenannte
Transformation mittels XSL(T). Grob vereinfacht beschrieben kann man
damit auf Grundlage von Daten, die sich in einer XML-Struktur befinden
und einem Template eine beliebige andere Datenstruktur erzeugen.

Beispiel: Ich habe mir vor einiger Zeit ein kleines Tool geschrieben, das
mir VisualBasic-Forms (*.frm) in XML konvertiert. Nun habe ich zwei
XSL-Templates, die mir (je nachdem, welches ich verwende) entweder
MediaBasic-Sourcen oder PureBasic-Sourcen daraus generieren kann.
Wenn ich möchte, dann schreibe ich mir noch ein XSL-Template für BCX
und generiere BCX-Sourcen. Vielleicht veröffentliche ich das Tool
irgendwann und ein FreeBasic-Programmierer erstellt ein XSL-Template
für FreeBasic. Und das wohlgemerkt, ohne eine Zeile Code in meinem Tool
zu verändern! Versuch das mal mit INI-Dateien. ;-)

Du siehst: XML hat sehr wohl seine Einsatzgebiete. Ich habe hier auch nur
einen kleinen Teil dessen angerissen, was man mit XML machen kann
(zum einen, weil ich selber nicht der XML-Experte bin, zum anderen weil's
mittlerweile auch schon sehr spät ist und ich morgen früh wieder fit sein
muss).

Es ist sicherlich nicht richtig und immer optimal, für jeden kleinen
Datenfurz XML zu verwenden; wenn man jedoch einmal den richtigen
Einsatzzweck gefunden hat, ist man froh, dass es erfunden worden ist ;-)

Falls es noch Fragen hierzu gibt, versuche ich gerne Rede und Antwort zu
stehen.

Ich hoffe ich habe ein wenig Licht in's Dunkle gebracht.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
HeX0R
Beiträge: 3042
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Beitrag von HeX0R »

Vielen Dank für die tollen Ausführungen!

Es scheint als müsste ich doch über meinen Schatten springen und mich mal etwas mehr damit beschäftigen.
Diese XSL-Transformation hat mich neugierig gemacht, bin dann auf diese (sehr informative) Seite gestossen:
http://www.w3schools.com/xml/default.asp

Sehr interessant was man damit so alles treiben kann... das wirft ein völlig neues Licht auf xml-Dateien.

Nun ja, ich werd mich mal weiter einlesen, ich weiss ja wo ich den Thread hier finde, wenn ich weitere Fragen haben sollte.

Grüsse
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Ich habe hier ein schönes, dickes Buch über XML, vielleicht 250-300 Seiten, das ich auf www.seebi.de gewonnen habe, es ist nagelneu und wie oft es (von mir) aufgeschlagen wurde, kann man an der hand abzählen.
Denn ich wusste bisher auch nicht, was ich mit XML anfangen soll.
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Antworten