How do you evaluate API usability?


As a consumer of an API, how do you tell how usable the API is? Do you learn though bitter experience? Do you experiment with small development projects to see what the experience is like or do you dive in head first with a larger project? Do you even think about evaluating API usability before you start using the API?

Can you get a feeling for how usable an API is by reading blog posts, forum posts etc?

Comments (1)

  1. For the most part, it's irrelevant.  If I have to use an API, I have to use it.  It's pretty rare that I evaluate one API against another.

    Some things I look at when evaluating internal APIs:

    * Frequent use of overloads that do not add value?

    * Do methods have many parameters?

    * Do methods with many parameters have same types adjacent to each other?

    * Does an object have little behaviour and its API simply leaking the implementation?

    * good OO design