2011-12-09, 01:57 PM
Writing a program is simple with excel. Excel has VBA built into it so you just write whatever you want it to do just as if you were writing a VBA app from scratch more or less.
For calculators; http://en.wikipedia.org/wiki/TI-BASIC
A library is someone else's code that's been precompiled and released as something you can include in your own code and benefit from the work they've already done. For example if I wrote my own XML parser I could release it as a DLL and any person who wanted to parse XML files could include my DLL in their application and directly call the functions I've already written instead of doing the work themselves. Since XML is a mature system there are hundreds if not thousands of XML parsing libraries out there as well as more than a few "standard" libraries with each language.
Serialization is generally just directly outputting a binary representation of data in memory to a file and then later reading that image back into active memory to recreate it exactly as it was. Game saves used to work like that more or less, just writing a snapshot of RAM to disk then reinstating it. The problem with that is that it's not exactly something you can edit and work with without a very clear understanding of what you're doing. If you've ever edited a save game manually you'd have some understanding of it already.
A proprietary format is just that; It's some crap you invent yourself. I could for example decide that I wanted to write users to flatfile as:
[USER]
Name: Bob
Email: Here@there.com
[USER]
Name: Fred
Email: Something@Somewhere
And then I'd have my own little routine that knew that was the format to expect users to be in and to load them.
It's easier to read, easier to edit, but only I know how to read/write it and what to expect and what it's required to conform to.
With XML on the other hand, it's a standard. Any XML library can read it and form it's own representation and do something with the data.
You still need your own routines to convert the result of that to end state, but it's more portable and you can for example open up one of the XML files in any XML editor to make changes and have it confirm that you haven't made the file unreadable by breaking the required format.
For calculators; http://en.wikipedia.org/wiki/TI-BASIC
A library is someone else's code that's been precompiled and released as something you can include in your own code and benefit from the work they've already done. For example if I wrote my own XML parser I could release it as a DLL and any person who wanted to parse XML files could include my DLL in their application and directly call the functions I've already written instead of doing the work themselves. Since XML is a mature system there are hundreds if not thousands of XML parsing libraries out there as well as more than a few "standard" libraries with each language.
Serialization is generally just directly outputting a binary representation of data in memory to a file and then later reading that image back into active memory to recreate it exactly as it was. Game saves used to work like that more or less, just writing a snapshot of RAM to disk then reinstating it. The problem with that is that it's not exactly something you can edit and work with without a very clear understanding of what you're doing. If you've ever edited a save game manually you'd have some understanding of it already.
A proprietary format is just that; It's some crap you invent yourself. I could for example decide that I wanted to write users to flatfile as:
[USER]
Name: Bob
Email: Here@there.com
[USER]
Name: Fred
Email: Something@Somewhere
And then I'd have my own little routine that knew that was the format to expect users to be in and to load them.
It's easier to read, easier to edit, but only I know how to read/write it and what to expect and what it's required to conform to.
With XML on the other hand, it's a standard. Any XML library can read it and form it's own representation and do something with the data.
You still need your own routines to convert the result of that to end state, but it's more portable and you can for example open up one of the XML files in any XML editor to make changes and have it confirm that you haven't made the file unreadable by breaking the required format.
It's not having what you want - It's wanting what you've got.

