> From: Thomas Christen [mailto:[EMAIL PROTECTED] > Sent: Tuesday, 28 November 2000 4:45 > To: [EMAIL PROTECTED] > Subject: AW: [PATCH] Wait and Available > > > > The use of the prefix "I" for interfaces is not idiomatic to Java > > (according to JLS) (rather one should use the suffix Impl for > > implementation if needed to separate them both). > I or not I seams to be the question? Before reading the book "java 2 > performance and idiom guide" writen by Craig Larman and Rhett Guthrie, I > thoght the same way as you do. They say : "Many developers are > moving to the > I-convention because it instantly communicates the fact that the code > construct is an interface. This is important because interfaces are the > prefered way of specifying APIs and abstractions. Because of this, we > recommend beginning intrafce names with I.". I don't argue about > this idiom > but since we began using it, even in large Java-projects, the conceptual > model becam clearer and readable. >
Thomas, I do not like the "I" convention, myself. In general, I do not like embedding type information into names as types can be changed and get out of sync with the name. Indeed, interfaces often start life as abstract classes. A classic example of this problem from Windows is the wParam member of the Windows message which is not a word but a long in Win32 :-) Conor