On Monday, 2 September 2013 at 13:46:33 UTC, Manu wrote:
On 2 September 2013 21:37, Jos van Uden <use...@fwend.com> wrote:

On 1-9-2013 20:00, bearophile wrote:

Manu:

Seriously, how do you quickly read and understand the API through the
noise?


The noise increases if you have to repeat the class name for each method
:-)


+1


Really? You both think seeing the function signature a second time at the definition is 'noisy' when compared to massive blocks of arbitrarily indented function body code consuming the entire class definition, and
completely breaking up your code window?
A few function bodies and you can't see anything anymore. You have to scroll miles to get an overview of the class, and try and remember each function header along the way as you scroll by; you can never digest it
cleanly in one place.
My memory's not that good... So you end up scrolling up and down and up and down and up and down, and then inevitably, get off your arse, walk over,
and interrupt the guy that wrote it.
That's a waste of my time, it's a waste of their time, and in an office
environment, it's a waste of money.

So, I find it extremely useful being able to see the members and functions available listed in a row all together. I can quickly gather a fairly
complete mental picture.
Everyone on the weekend agreed with me, none of us could immediately understand the classes we were working with. Productivity being the key element in our exercise, and it demonstrably impacted our productivity. But whatever. I just threw it in there because it was a recurring topic,
and I thought it was worth mentioning.

I think there is a way to please both sides.

I Eiffel there is a (standard) way to show only the definition and/or the interface of a class. It shouldn't be much of a work to have the D compiler (or some utility, but that'd be considerably more work) spit out those, too.

While I don't agree with Manu's wish to handle D classes C++ style I do quite well see the value of a clean definition skeletton/API/interface overview.

A+ -R

Reply via email to