Brian L. Stuart wrote:
From: der Mouse <mouse at Rodents-Montreal.ORG>
There is some force to the wheel-reinvention
argument, but it's also
often the case that the wheels provided by the toolkit are a bad match
to the application (to varying degrees), so it's a question of whether
If no one reinvented the wheel, we wouldn't have the
pneumatic tire, and I'd hate to think what my Miata
would drive like on stone wheels.
It's already been done, and now there are standard wheels (GTK, QT, etc.).
Using an existing system allows your application to function well, and
allows you to think about more important things than "Gee, this thing
would look better if I moved it 3 pixels to the left and changed the
color a bit. Oh well, I'll have edit the code some more because I
didn't make a facility to do that."
Then, you have the disadvantage (some would say advantage, but I'd say
that's misguided) of having your app look and behave completely
different from everything else the end user runs. These days, end users
expect well behaved applications that are similar in their interfaces.
Besides that, there's a huge added bonus to using wheels that already
exist, if you use the right kind, your app suddenly can run on OS X,
Linux, *BSD, and, yes, even windows (assuming the rest of it is portable
enough).
Yes, it's perfectly fine to reinvent the wheel if you're in the business
of making wheels. But if you're making cars, it's in your best interest
to use standard wheels.