It's not just the models. There are plenty of internal interfaces in wicket that have the I prefix. And it's not even consistent. Some interfaces have it some don't. So every time I'm looking for something not only do I have to know if it is an interface but I also have to know whether it starts with an I, which not all do.
As for the naming, IModel/Model is what we have now. Apart from not being very java like the name Model doesn't say much about it's nature. Model/ModelImpl is probably even worse. Everytime I see class that ends with Impl I have to ask myself whether there really was a point in extracting the interface. I think Model (interface) / ObjectModel is the best alternative. ObjectModel says enough about the implementation - that it holds a single object. But I don't think this thread is about actual naming. It's more about pros & cons of the prefix. -Matej On Sat, Oct 3, 2009 at 3:58 AM, Ryan Gravener <[email protected]> wrote: > It's just my preference. IModel / Model vs. Model / ObjectModel or > Model / ModelImpl > > Ryan Gravener > http://bit.ly/no_word_docs > > > > On Fri, Oct 2, 2009 at 9:25 PM, Matej Knopp <[email protected]> wrote: >> Easier? How's that? I find it really annoying that when I'm looking >> for something and I have to know upfront whether it is an interface or >> a class. And when reading the code, what difference does it really >> make if it is interface or a class? By that logic we should start >> using hungarian notation. You could easily see what type the class >> member is... >> >> -Matej >> >> On Sat, Oct 3, 2009 at 1:55 AM, Ryan Gravener <[email protected]> wrote: >>> -1 It's nice to know what is an interface by seeing the I. Also for >>> IDEs its easier to find the class I'm looking for. >>> >>> >>> Ryan Gravener >>> http://bit.ly/no_word_docs >>> >>> >>> >>> On Fri, Oct 2, 2009 at 7:37 PM, Matej Knopp <[email protected]> wrote: >>>> On Sat, Oct 3, 2009 at 1:29 AM, Altuğ B. Altıntaş <[email protected]> wrote: >>>>> what about upgrading projects from 1.4 to 1.5 ? >>>>> It breaks compatibility >>>> There will be other breaks. This is not a minor update. Breaks >>>> compatibility is hardly a valid argument here. We will break >>>> compatibility one way or another. But we will also provide migration >>>> path. Replacing Model with ObjectModel and then IModel with Model in >>>> code (just an made up example) is hardly a task that would prevent >>>> anyone from migrating application to 1.5. >>>> >>>> -Matej >>>> >>>>> >>>>> -1 >>>>> >>>>> Not: i am not a *committer* but loves wicket :) >>>>> >>>>> 2009/10/3 Matej Knopp <[email protected]> >>>>> >>>>>> 1.5 is going to be neither source nor binary compatible. And I >>>>>> wouldn't say that consistency and conventions is not a reason. >>>>>> >>>>>> -Matej >>>>>> >>>>>> On Sat, Oct 3, 2009 at 1:14 AM, tetsuo <[email protected]> wrote: >>>>>> > -1 >>>>>> > >>>>>> > It breaks compatibility for absolutely no reason. >>>>>> > >>>>>> > >>>>>> > >>>>>> > On Fri, Oct 2, 2009 at 7:45 PM, Johan Edstrom <[email protected]> >>>>>> > wrote: >>>>>> > >>>>>> >> +1 >>>>>> >> >>>>>> >> >>>>>> >> On Oct 2, 2009, at 17:28, Igor Vaynberg <[email protected]> >>>>>> wrote: >>>>>> >> >>>>>> >> is it perhaps time to take the I out of our interface names? wicket >>>>>> >>> has been the only project i have ever worked on/used that follows >>>>>> >>> this >>>>>> >>> convention, is it time for a change? >>>>>> >>> >>>>>> >>> this is not meant as a flamewar about which convention is teh >>>>>> >>> aw3s0m3st, simply a discussion of whether or not we should switch. >>>>>> >>> >>>>>> >>> -igor >>>>>> >>> >>>>>> >> >>>>>> > >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Altuğ. >>>>> >>>> >>> >> >
