This post originated from an RSS feed registered with Agile Buzz
by Jimmy Nilsson.
Original Post: API Design, part I
Feed Title: Jimmy Nilsson's weblog
Feed URL: http://www.jnsk.se/weblog/rss.xml
Feed Description: Patterns, OO, DB, .NET, ...
API Design might to some not be the coolest thing around, but if you ask me it's extremely important. A few months ago I was playing with it a little and came up with a list that is
inspired by the Agile Manifesto:
API design manifesto :-)
Code over comments
Immutability over mutability
Testability over encapsulation
Context over generality
Small and simple over completeness
Backward compatibility over revolution
Encapsulation over transparency
I know, I need to explain my thinking for each line above. I think I'll put it into a series of blog posts, but first I'd like to improve the list. A few weeks ago I discussed this topic with
a couple of friends at a workshop and I got loads of ideas about how to improve it. Before starting the work I also wanted ask around here for even more input. If you have ideas, please email me:
jimmy dot nilsson at factor10 dot com.