我经常很难决定如何命名一门课。这并不是因为这个类的用途不明确,而是因为xxx*Controller*、xxx*Manager*、xxx*Info*、xxx*Helper**、xxx*Util*等等。
如果我有一个通过HTTP上传一些内容的类,我倾向于将其命名为HttpUploader或行中的其他内容。我见过许多类似的类被命名为HttpUploadManager、HttpTransmissionController、HttpUploadHelper等等。
我对何时使用控制器、管理器、信息等有些困惑。,有什么文章或书可以帮助我成为更好的类名称??
PS:此外,与HttpTransmissionController或HttpDispatchManager :P相比,像HttpTransmissionController或HttpDispatchManager这样的名字听起来相当贫血。
发布于 2009-08-13 21:15:15
发布于 2009-08-13 21:13:35
命名是困难的,所以不要担心你挣扎,因为我们都是。相信我,从来没有比现在更容易了!
就整个controller /Manager/Helper/Util/任何后缀而言,我倾向于使用这样的规则:如果是约定(例如,对于ASP.NET MVC,则控制器类名以“Controller”结尾的约定),然后使用后缀,否则尽量避免它。我更希望有一个名为HttpUploader的类,而不是HttpUploadManager。
命名最重要的一点是,这个类应该按它说的做。如果它是一个使用HTTP上传某些内容的类,那么HttpUploader将准确地描述它。使用像HttpUploadManager这样的花哨名字并不能告诉我它能做什么。它会上传自己的东西吗?它管理多个东西的上传吗?我喜欢尽可能地保持简单,同时描述类/方法/任何东西的用途。
我发现一个很好的指导方针是,如果你真的很难命名某件东西,就像你花了很长时间思考,你仍然不能将它的作用提取为一个合理的名称,那么你可能需要将你想要命名的任何东西重构成更小、更具体的组件。
发布于 2009-08-13 21:31:52
如果您在选择名称时遇到困难,可以咨询ClassNamer.org。
https://stackoverflow.com/questions/1274577
复制相似问题