https://codereview.appspot.com/13635044/diff/14001/environs/manual/bootstrap.go#newcode28
> environs/manual/bootstrap.go:28: bootstrap.BootstrapStorager
> On 2013/09/16 04:56:48, axw1 wrote:
> > On 2013/09/16 03:02:08, thumper wrote:
> > > Arg, here I know that I'm going to clash on names with Rog, but
IMO
> > > BootstrapStorager
> > > is a terrible name.
> > > HasBootstrapStorage
> > > makes a lot more sense to me. Firstly you can look at the name
and know
> what
> > is
> > > going on, and we aren't inventing words to go by the weird idea
that
> > interfaces
> > > should end with "er".
> > >
> > > bootstrapStorage, ok := sometype.(HasBootstrapStorage)
> > >
> > > reads ok to me (FSVO ok given the syntax of the type assertion).
> >
> > Copy and paste of my reply to William: I'm not a big fan of the
"HasX" style.
> > IMO, the name should represent the behaviour or role, not something
an
> > implementer has.
> +lots.
> I'm not keen on "BootstrapStorager" as a name either,
> but I think it's important that interface names are nouns
> not predicates - an interface name should represent what the
> object *is*, not what it *can be*.
Why not then just call the interface "BootstrapStorage".
On 2013/09/16 16:51:34, rog wrote:
https:/ /codereview. appspot. com/13635044/ diff/14001/ environs/ manual/ bootstrap. go manual/ bootstrap. go (right):
> File environs/
https:/ /codereview. appspot. com/13635044/ diff/14001/ environs/ manual/ bootstrap. go#newcode28 manual/ bootstrap. go:28: bootstrap. BootstrapStorag er (HasBootstrapSt orage)
> environs/
> On 2013/09/16 04:56:48, axw1 wrote:
> > On 2013/09/16 03:02:08, thumper wrote:
> > > Arg, here I know that I'm going to clash on names with Rog, but
IMO
> > > BootstrapStorager
> > > is a terrible name.
> > > HasBootstrapStorage
> > > makes a lot more sense to me. Firstly you can look at the name
and know
> what
> > is
> > > going on, and we aren't inventing words to go by the weird idea
that
> > interfaces
> > > should end with "er".
> > >
> > > bootstrapStorage, ok := sometype.
> > >
> > > reads ok to me (FSVO ok given the syntax of the type assertion).
> >
> > Copy and paste of my reply to William: I'm not a big fan of the
"HasX" style.
> > IMO, the name should represent the behaviour or role, not something
an
> > implementer has.
> +lots.
> I'm not keen on "BootstrapStorager" as a name either,
> but I think it's important that interface names are nouns
> not predicates - an interface name should represent what the
> object *is*, not what it *can be*.
Why not then just call the interface "BootstrapStorage".
https:/ /codereview. appspot. com/13635044/