Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: "how do you design your APIs?"

by bsb (Priest)
on Mar 23, 2004 at 22:54 UTC ( #339239=note: print w/replies, xml ) Need Help??


in reply to Ingy's "Swiss Army Light Sabre" - or, "how do you design your APIs?"

Often you want two APIs, a comprehensive and flexible one, and an idiomatic DWIM wrapper Blah::Simple.

One way to reality check your design decisions is to compare your API to another API from a different but comparable domain.

Another test (that I need) is to return to your design after some months. "What was I thinking?!" is often the result when you lose the blinkers of your original problem.

I don't like API designs that second guess you, nor those that strictly follow a non-Perlish design (usually found in library or system wrappers)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://339239]
help
Chatterbox?
[choroba]: as it's considered unpolite to push to someone else's repo
[choroba]: and in fact, you don't push into the target repo, you push into your branch of your fork
[choroba]: the maintainer of the upstream repo than "merges" the pull request, i.e. they pull from your fork into the upstream
[Discipulus]: ' i.e. you asked them to pull from your repo' =~ I (subj) want to push
[Discipulus]: chorobayour words are reasonable
[choroba]: I'm just repeating some else's words as I remembered them after having asked the same question
[choroba]: s/some/someone/
Discipulus what a pity all people do not speak only in eatalian..
[choroba]: we'd need video calls more often :)

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (6)
As of 2017-05-27 20:15 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?