[Seaside] Re: FileLibrary / css files confusion - diagnosis: trying to change '/seaside/' in URL messes up FileLibrary ??

Amos aaamos at gmail.com
Wed Jan 2 11:19:12 UTC 2008


> > > Accessors of the form #setSomething: are private by convention, you
> > > should not call them directly unless you exactly know what you are
> > > doing.
> >
> > Really? Interesting, I hadn't heard about that in other flavours of
> > Smalltalk. Is it a general Squeak convention or a Seaside convention?
>
> No, this is Kent Beck, Smalltalk Best Practice Patterns: Constructuor
> Parameter Method. (page 25)

Ah, I didn't remember that one... heh, guess it's hard disagreeing
with Kent Beck.

> Also check out the Seaside coding-conventions:
> http://www.seaside.st/community/conventions

Interesting, thanks for the link. Offhand, everything seems sensible
except the last point of the 'Formatting' section imho, but I guess I
could learn to live with it :-/

> > Shouldn't #setName: be in the 'private' protocol then, rather than in
> > 'initialization'?
>
> The initialization protocol is private, it should never be called from outside.

I'm used to it being called 'initialize-release', but that may be a VW thing...

> > That's how I was taught to do it, way back when,
> > and/or to add a "private" method comment for unsuspecting browsers.
> > I've encountered other conventions, like #_name:, #privateName: or
> > #basicName: rather than simply #name:, for various purposes, but not
> > the #setSomething: one.
>
> #_ as part of a method name doesn't  work in Squeak and is very ugly
> in my opinion too.

I agree, it seems very... C-ish.

> #basic as a method prefix is used to show that a method is private and
> that it should not be overridden (something like private final in
> Java).

Hmm, different again from what I remember - the #basic... methods I've
seen were simply used to access a "naked" instance variable when the
provided public accessor was executing some code before returning the
instance variable, and was generally placed in 'private' or
'privileged' protocols.

> Cheers,
> Lukas

Thanks, very interesting stuff. Guess Smalltalk (and especially
Squeak) continues to evolve when you look the other way for a few
years. =o)


More information about the seaside mailing list