On Mon, Sep 02, 2013 at 12:32:06AM +1000, Manu wrote: > On 1 September 2013 19:57, Jacob Carlborg <d...@me.com> wrote: [...] > > Sounds like you want an outline view in the IDE. This is supported > > by DDT in Eclipse. Even TextMate on Mac OS X has a form of outline > > view. > > No, actually, as much as I keep banging on the IDE thing, in this case > I absolutely don't want help from the IDE, I just want to look at my > page of text, and be able to read a useful summary. > Can you give me any good reasons why fully defined functions polluting > the readability of a class definition could possibly be a good thing? > I just don't get it... why would you ever want to break up the nice > summary of what a class has&does, and why would you want to indent all > of your functions an extra few tab levels by default?
If I wanted to to that, I'd setup folding in vim to fold function bodies. There's nothing inherently wrong with fully-defined functions inside their class -- Java does it, and I don't hear Java programmers complain about that. > As a programmer, I spend a lot more time reading code than > documentation, and much of that time is spent reading it in foreign > places like github commit logs (limited horizontal space), diff/merge > windows (hard to distinguish class API changes vs function body > changes at a glance, since they're interleaved), even chat clients and > communication tools. The IDE can't assist in any of these contexts. If > you have to have an IDE to read your code, then something is really > wrong. > > ...also, that implies you have good IDE integration, which is the a > central part of my entire rant! ;) > This argument is invalid until we have that, and at this point, it > seems much more likely we may be able to define methods outside the > class scope than have awesome IDE's. I dunno, this sounds to me like maybe your class design needs to get looked at. :) I usually try to structure my code such that class methods are relatively short and self-contained, and I don't end up with classes with 50 methods each 10 pages long. T -- Customer support: the art of getting your clients to pay for your own incompetence.