On Nov 25, 2008, at 1:14 PM, Mark Wilden wrote:

On Tue, Nov 25, 2008 at 10:04 AM, Matt Wynne <[EMAIL PROTECTED]> wrote:

On 25 Nov 2008, at 17:54, Mark Wilden wrote:

On Tue, Nov 25, 2008 at 8:54 AM, Matt Wynne <[EMAIL PROTECTED]> wrote:

Surely, as soon as they scroll off the screen, it's time to factor that code off into a module or class of its own though?

That's assuming there are a lot of class methods. There might be only one, but if that 'class << self' is off the screen, there's the potential for confusion (among noobs and gurus alike). In many if not most cases I've seen, there were no counterbalancing benefits.

I don't understand. If it's off the screen, it's off the screen, whether it's defined using self.foo or class << self; def foo; end;

If the def line is off the screen, then you don't even know what method you're in (at least with most editors). I wasn't talking about that.

Look, all I'm saying is that to understand the meaning of a chunk of code, you need to see more lines with 'class << self' that without it. Personally, I like relatively terse code, because it's easier to read - if for no other reason than that more fits on a single screen without losing clarity.

I'd be interested, however, in hearing about the benefits of opening the eigenclass to define class methods (apart from ease in searching, which may be best handled with ctags).

Grouping and private methods.

You won't risk having a class methods scattered all over the file.

Scott

_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to