命名包含文件名的变量?

Rog*_*mbe 3 language-agnostic naming-conventions

如果我有一个包含文件的完全限定名称的变量(例如,项目文件),是否应该调用它projectFile,projectFileName或者projectPath?或者是其他东西?

Tom*_*lak 7

我经常跟这些:

  • FileName 仅用于文件名(不带路径)
  • FilePath 仅适用于父路径(没有文件名)
  • FileFullName 对于带路径的完全限定名称

我不认为有这样的东西作为公认的标准.我取决于您(团队)的偏好以及您是否需要在给定情况下区分这三者.

编辑:我对这些特定命名约定的看法是:

  • 直觉上,"Name"是一个字符串,因此是"Path"(和"FileName")
  • "名称"是相对的,除非它是"FullName"
  • 相关的变量名称应该以相同的前缀("文件"+ ...)开头,我认为这提高了可读性
  • 具体/属性是右分支:"文件" - >"FileName"
  • 特殊化是左分支:"FileName" - >"ProjectFileName"(或"ProjectFileFullName")
  • "文件"是表示物理对象的对象/句柄,因此"ProjectFile"不能是字符串

我不能总是坚持这些惯例,但我努力.如果我决定使用特定的命名模式,即使这意味着我必须编写更多描述性(=更长)的变量名称,我也是一致的.代码更经常被阅读而不是书面,所以额外打字不会给我太多打扰.