Tahir’s Blog

Blog about latest technology trends and thing I find interesting.

June-26-07

When to using a framework, library or API.

posted by Tahir Khan

Ask not what framework can do for you, ask what you have to do for the framework.

When choosing a framework / library / API, don’t get caught up on initial jazz from the framework. I see many coworkers and friends jumping on the idea of using frame work because they saw partial demo or heard about the new technology. When choosing a framework / library / API, you should asses how much work you have to do to support the framework / library / API and NOT how much time you save because of the functionality offered by the framework / library / API.

Its very easy to get carried away when you hear the hype or see some fancy demo of a framework / library / API. But when you got it installed and are playing around with it, you find the harsh reality that this code is like a one size fits all t-shirt. At that point many don’t want to abandon the framework / library / API because of the time already invested, but you only get 5% of what you actually needed.

When choosing a framework / library / API its best to keep few things in mind.

Dedicate some time for research.

You must give your self some time as part of the project to do research on the API. The better you can understand the framework / library / API the better and accurate decision you can make if the framework / library / API is right for you. This research is very valuable, if you make a decision to use the framework / library / API, you will make part of your project industry standard. If the it comes with developer forums then you also get great support. Over all it can tremendously help your project if applicable. Also you can save a lot of time when the project goes thru quality assurance, since a lot of testing has already been done by framework / library / API creators.

Have a good understanding of what you need.

Have a good understanding of architecture and functional requirements of your project. Once you completely understand your project, only then you can review the framework / library / API and completely understand what your are getting into. Think of framework / library / API as a project which is getting dumped on you. So you want to make sure every core functionality you need belongs to framework / library / API and if something is not there you have a very good understanding of how to integrate that with framework / library / API.

Try it before you buy it.

Many framework / library / API comes with a licenses, you want to get a very good understanding which license you would need to obtain to use your particular framework / library / API. Its always best to use shareware or trial version to make sure it has everything you need before actually making the purchase!

Evaluate ROI.

Make sure you evaluate your “Return On Investment”. Meaning you should make two lists, one with all the changes or functionality you have to write to use the framework / library / API and second with developing the functionality your self with out any dependency. Although it may be appealing to have certain features you get our of the box, if they are not a major requirement as part of your project then it probably doesn’t make sense to use that particular framework / library / API no matter how appealing it may be.

Tags:

Add A Comment