Click here to Skip to main content
14,699,719 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:

Even though there are thousands of SDKs for almost every platform, OS, application, and so on; I've been unable to find any tips and tutrioals on how would you start creating an SDK for your very own application, the steps to follow, and such kind of information. Therefore, I'd like to know if any of you have any knowledge on such kind of commitment, to share with us :).

Best regards!


Look out for what you would like the programmer that uses your application to be able to control and manipulate. Think of yourself as a user, and look out for the functionalities that you might like to see. This must give you a rough idea of what needs to be exposed off your application through the SDK.

Then try and group those features that you'd like to expose. Let me assume that your application does secure compression of files and folders.

So now for example, one group of functions might deal with the way your application would deal with data security (encryption, decryption, the algorithms that you'd let the programmer use to do them, provision for a password, etc.,).

While another group of functions would deal with how the compression itself is done (provide the programmer with ways to decide upon the output format, should it run on the background, etc.,), operation mode (heavy or light - how many threads to use to do the operation), etc.,

There are gotchas to take care of - plan the function calls very carefully (think of the prototype, the arguments, see if you need to keep something reserved for future use, think of if you'll need to provide backwards compatibility in the future, scalability, etc.,).

I could go on, but I believe that you might have already got an idea (on how to start) by now.

PS: Kindly use the message board at the bottom of this page to discuss anything related to the query or any answers given.
A complete SDK. Well looks like you know a lot about them both even though you don't have anything usefull to add. Just keep using all your time feigning that you know about something by criticising
Thanks for your answer Rajesh! I've already mapped all the features that I want to expose and the needed features for the scripting tools to provide, I was just looking for some tips to start implementing and get all those things up and running trying to avoid common mistakes if any, but I've already found it looking around.

SDK or API? Depends on a lot. Basically, just be an experienced programmer and start from there.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900