Citat:
Ursprungligen postat av xeroc81
Inställningar i programmet som användaren kan ändra och som ska sparas mellan 2 sessioner brukar man serialisera som klartext (xml/ini/registret) medans data som programmet använder internt brukar serialisera som binärt*.
Ska man spara inställningar i .NET ska man nog ta sig en titt på de nya funktionerna för just detta i 2.0. Det är väldigt smidigt att använda sig av de nya klasserna, och än mycket smidigare om man använder Visual Studio då man får upptypade inställningsklasser. Kontentan av det hela blir att du aldrig behöver parsa någonting, det sköter ramverket åt dig, och skulle användaren ha kukat ur xml-filen som .NET skapat så kan ett defaultvärde anges istället.
Binära format har egentligen bara de fördelarna att de (oftast) är storleksmässigt mindre. Att binära filer skulle innebära problem på andra system är lite av en myt faktiskt. Det är inte några större problem att läsa en binär fil på något system så länge man är på det klara med vilken byteordning som gäller och filens struktur. Det är däremot lättare att klura ut den på egen hand om filen är i klartext, naturligtvis.
Binära filer har också ofta den fördelen att de är relativt lätt att skriva snabba parsers, men med den datorkraft som gemene man har idag så spelar det argumentet väldigt liten roll.
Den största fördelen som jag ser det är att man lär sig väldigt mycket om hur saker fungerar av att jobba binärt istället för i klartext. Resten är marginellt.