Developing a project which is an implementation of an open standard/protocol
A lot of interesting code/projects are implementations of protocols, eg SNMP.
How are projects like these, which depend on implementing a certain format, developed? Is the process something like get the guidelines of the protocol and then implement code which follows it.
For example, XML-RPC is about transmitting XML docs between client/server, so the documentation on this protocol must outline the structure of the XML documents and then the way the transportation between client and server works, so the coder will implement this sort of functionality (xml doc construction, networ开发者_JS百科king between the client and server).
Projects I am thinking of (not to develop) are C# libraries which can interpret .PSDs, make VHDs, etc.
So if I was to develop a C# app to implement .AI files (Illustrator files), what would be the steps I would look at (such as contacting Adobe, etc)?
Is this the way such projects are developed?
Usually you would first lookup if there is any specification for the protocol/file format you intend to interpret. If you can't get the specification from open sources, you will have to pruchase it (from Adobe or from whoever). Please check the license terms before publishing some tools interpreting the protocol or the file format (I'm not lawyer... ^_^)
If the file format you intend to interpret is open (such as PDF) you will not have to contact anyone.
EDIT:
I found this on Adobe's file formats: http://www.fileformat.info/format/psd/spec/index.htm
精彩评论