Title: RE: [nant-dev] L16N

Acronyms are horrible class names and are frowned upon by every modern coding standard.  When acronyms must be used, they should be used with other nouns that describe what the class is.  A utilities class is a utilities class is a utilities class, so ResourceUtils is a perfectly suitable name (although I wouldn't use an abbreviation any more than an acronym).  Further, verbosity should rarely be a limiting consideration when developing a naming scheme since the more verbose a naming scheme is then it is more likely to accurately describe the encapsulation principles of the object.  If creating an accurately descriptive name leads you to the conclusion that your object has some scope creep then you should break it into multiple objects.

Payton Byrd
Trane eBusiness
QED Team
Phone: 931-905-5386
Fax: 931-648-5901

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Ian MacLean

Sent: Wednesday, February 16, 2005 1:27 AM
To: Greco Giuseppe
Cc: nant-developers@lists.sourceforge.net
Subject: Re: [nant-dev] L16N


Greco Giuseppe wrote:

>>I figured that one out :). We could probably call it
>>NAnt.Core.ResourceUtils or somthing like that.
>>   
>>
>
>That's up to you... but such a name is a little bit too long and
>uncomfortable to be used often...

>
you think ? Show me some classes in the core framework that have 2
letter names. The name 'RM' isn't particularly descriptive - as
evidenced by the fact that you felt the need to explain what it stands for.

>Furthermore a class name should be singular and represent just
>an entity (Array, Window, Button, etc.).
>

>
I disagree. We're talking about a class that contains only 1 static
method and will never be instantiated. So its hardly modelling a fixed
object. For similar examples in the NAnt codebase:

NAnt.Core.Util.FileUtils
NAnt.Core.Util.ReflectionUtils
NAnt.Core.Util.StringUtils

so for consistency it should probably be called:
NAnt.Core.Util.ResourceUtils

which is even more verbose :)

Ian

Reply via email to