Framework Design Guidelines: Design Methodologies
Continuing in the series of discussing topics from the Framework Design Guidelines…
Expert from 2.2 Fundamental Principles of Framework Design
DO NOT rely solely on standard design methodologies when designing
the public APIs layer of a framework.
CHRIS ANDERSON Each developer has his or her own methodology,
and although there isn’t anything fundamentally wrong with using other
modeling approaches, the problem generally is the output. Starting by writing
the code you want a developer to write is almost always the best
approach—think of it as a form of test-driven development. You write the
perfect code, then work backwards to figure out the object model that you
would want.
I love this one from Captain Anderson… What methodologies do you find work particularly well for API design? And what nightmare stories do you have from people using the wrong tool?
Comments
- Anonymous
October 16, 2005
Hi Brad,
I got your book copy from the PDC. Good book. Providing guidelines for the programmability of a Framework (Library).
But, with a Spec like that (in the appendix)? And the way you do BDUF, isn't that just work for project where you really develop Framework/Library as the product?
What if we develop apps as the product & we may also evolve our Framework? (Let say in an XP environment) ... no guarantee a spec like that is generated.
Developing Framework is always fun to do for Devs, but we should "do the simplest thing that works".
I mean, BDUF for Frameworks only works if we build Framework as the product. Not developing apps.
Any comment?
BR,
Norman - Anonymous
October 17, 2005
I agree with Chris. In fact, I would assert that every group that produces a library should also produce (and ship) a real application using that library. - Anonymous
October 18, 2005
Yes, that is fair Norman… the book is focused on teams that whose’ stated objective is to build a reusable framework… in fact the value of the book goes up the large the number of distribution of those people are. While there is certainly some value for an application developer, the primary focus in explicitly designed frameworks and clearly you should not always use the framework model. You should only build a framework if you are reasonable sure their will be lots of different consumers. - Anonymous
June 01, 2009
PingBack from http://portablegreenhousesite.info/story.php?id=10658