Visit Twellow.com

Why Designing a Good API Matters

Joshua Bloch has a good presentation outline called How to Design a Good API and Why it Matters.

Joshua is a Principal Software Engineer for Google, before that an architect in Sun's Core Java Platform Group (he designed several of the standard java API's). Josh also wrote Effective Java.

Here are a few points from the presentation that I found interesting...

  • If you program, you are an API designer
  • If you keep the spec short, it?s easy to modify
  • API Should Do One Thing and Do it Well
  • API Should Be As Small As Possible But No Smaller
  • Names Matter - API is a Little Language
  • Fail Fast - Report Errors as Soon as Possible After They Occur

Related Entries

Cheat Sheet Roundup - Over 30 Cheatsheets for developers - September 1, 2005

REST vs SOAP Web Services - August 3, 2005

Designing from the outside in - April 27, 2005

Google Code - March 17, 2005

*Originally published at Pete Freitag's Homepage

Pete Freitag (http://www.petefreitag.com/) is a software engineer, and
web developer located in central new york. Pete specializes in the
HTTP protocol, web services, xml, java, and coldfusion. In 2003 Pete
published the ColdFusion MX Developers Cookbook with SAMs Publishing.

Pete owns a Firm called Foundeo (http://foundeo.com/) that specializes
in Web Consulting, and Products for Web Developers.

Digg This! StumbleUpon This!
AddThis Social Bookmark Widget

About the author:
Pete Freitag (http://www.petefreitag.com/) is a software engineer, and web developer located in central new york. Pete specializes in the HTTP protocol, web services, xml, java, and coldfusion. In 2003 Pete published the ColdFusion MX Developers Cookbook with SAMs Publishing.

Pete owns a Firm called Foundeo (http://foundeo.com/) that specializes in Web Consulting, and Products for Web Developers.

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
5 + 6 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.