AW: VerySimpleXML: Problem unter iOS?
Performed nicht schlecht bis jetzt:
XML file: ~220 KB read write MSDOM 2.5 18.6 ADOM 10.5 35.3 OmniXMLKluug 3.3 5.0 VerySimpleXML 1.0 1.0 AlcinoeXML Error normiert, kleiner ist schneller. |
AW: VerySimpleXML: Problem unter iOS?
nativxml könnte man noch benchmarken
https://code.google.com/p/simdesign/...ib%2Fnativexml http://www.simdesign.nl/xml.html |
AW: VerySimpleXML: Problem unter iOS?
Zitat:
|
AW: VerySimpleXML: Problem unter iOS?
Liste der Anhänge anzeigen (Anzahl: 3)
himXML ... in dem einem Unterverzeichnis liegen noch ein paar XML-Klassen anderer Entwickler.
Die "aktuellen" Version von himXML sind aber bis maximal D2006/TDE abwärskompatibel und das wird sich auch nicht ändern, da es einfach zu viel Aufwand ist, wenn man noch eine ordentliche Code-Struktur und nette RTL&Compiler-Features nutzen möchte. Eine der Älteren bis D7 (ich glaub jemand verwendete die auch in D5). Zitat:
Delphi-Quellcode:
// splitt long lines
I := 0; while I < Lines.Count do begin if Length(Lines[I]) > 10000 then begin Lines.Insert(I + 1, Copy(Lines[I], 10000 + Low(string))); Lines[I] := LeftStr(Lines[I], 10000); end; Inc(i); end; for I := 0 to Lines.Count - 1 do ... |
AW: VerySimpleXML: Problem unter iOS?
Zitat:
|
AW: VerySimpleXML: Problem unter iOS?
Noch nicht optimiert genug? :roll:
Delphi-Quellcode:
// splitt long lines
for I := Lines.Count - 1 downto 0 do begin if Length(Lines[I]) > 1000 then begin for I2 := Length(Lines[I]) div 1000 - 1 downto 0 do Lines.Insert(I + 1, Copy(Lines[I], (I2 * 1000) + Low(string), 1000)); Delete(I); end; end; |
AW: VerySimpleXML: Problem unter iOS?
Zitat:
Delphi-Quellcode:
upps, hatten wir ja schon :)
if (Length(Line) > 0) and (Line[Low(Line)]='x') then
bla |
AW: VerySimpleXML: Problem unter iOS?
Delphi-Quellcode:
Cool, wie schnelle es so ausssieht, daß man mehr und damit natürlich auch "besseren" Code geschrieben hatt. 8-)
if Copy(MeineOrdentlichSprechendeVariable, 1, 1) = 'x' then // nääääää und würde in einem Benchmark gnadenlos ausscheiden
if LeftStr(MeineOrdentlichSprechendeVariable, 1) = 'x' then // nääääää if FirstCharIs(MeineOrdentlichSprechendeVariable, 'x') then if CharIs(MeineOrdentlichSprechendeVariable, 1, 'x') then if (MeineOrdentlichSprechendeVariable <> '') and (MeineOrdentlichSprechendeVariable[1] = 'x') then if (Length(MeineOrdentlichSprechendeVariable) > 0) and (MeineOrdentlichSprechendeVariable[1] = 'x') then if (Length(MeineOrdentlichSprechendeVariable) > 0) and (MeineOrdentlichSprechendeVariable[Low(MeineOrdentlichSprechendeVariable)] = 'x') then |
AW: VerySimpleXML: Problem unter iOS?
So. ich hab jetzt erstmal den bestehenden alten Code (noch nicht mit high/low) auf Google Code eingecheckt http://code.google.com/p/verysimplexml/, als Ziel würde ich auf eine 2.0 hinarbeiten, die Cross-Plattform für iOS/Android/MacOSX/Win32/Win64 unterstützt. Weiterhin sollte die Unit klein und überschaubar bleiben - soll jeder anpassen wie er mag. Für Erweiterungen wie Node.AsInteger/AsFloat/etc. würde ich eine zweite Unit vorschlagen, die per Helperclass einige Funktionen nachrüstet - gerade bei AsDateTime wirds spannend (sprich: lang) wie himitsu angemerkt hat. Daher würde dies einfach in eine Helperclass packen, da kann dann auch jeder einfacher was ändern.
Ihr seid wirklich herzlich gerne eingeladen, eure Änderungen am Code einzuchecken. Ich werde erst die nächsten Tage dazukommen, dann fange ich mit High/Low für die Strings an. |
AW: VerySimpleXML: Problem unter iOS?
Sehr schön. Ich würde allerdings erst Mal vorschlagen, dass man die Fehler beseitigt, bevor noch mehr Features eingebaut werden. Vielleicht auch mit Stabilisierungs- und Entwicklungs-Branch.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz