关于文件命名

作者:ghost 来源:CSS森林 时间:2009-09-18 16:29:00 


遇到一个很实际的问题:由于不想增加目录的深度,减少磁盘寻址的时间,需要减少一些目录层级。

大家都知道建立文件夹是为了让文件管理更加的方便,现在需要减少文件夹,如何保持文件管理的方便就成为必需解决的。很容易我们想到通过命名来解决这个问题,那是不是随便一个命名都能起来方便管理的作用呢?样式的命名规则是否适用?对于样式的命名,在《 样式命名规则 》已经有讨论,可是样式的命名规则并不能被应用到文件的命名中,毕竟使用的环境不太一样,要解决的问题也不太一样。样式命名要解决的是名称语义化,通过名称能知道这个定义的作用范围;而文件的命名要解决的是更方便的找到对应的文件,当然如果名称有意义,也会有帮助,更重要是要解决同一文件夹下如何更快找到文件。

怎样才能更快找到需要的文件呢?操作系统通过路径能正确找到对应的文件,因为在每一层目录里,所有的标记(目录名、文件名)都是唯一的。而我们找一个文件,一般会需要下面的信息:

  • 文件名(叫什么,一般这个信息会有缺失)

  • 文件类型(图片?样式?页面?还是什么?)

  • 所在域名、栏目的位置(在哪个地方?)

  • 什么时间修改过

  • 路径(就算知道了,一般也不是直接就能使用的,需要层层点击)

对于电脑来说,它并不需要目录名或文件名多容易看懂,只要符合命名规则、同一层级下唯一就可以。但对于我们来说,更希望能通过命名知道更多的信息,因此需要命名有一定的意义。回到一开始的问题,如果当前就在最后的一层目录里,面对那么多的文件,如何更方便找到需要的文件?没错,通过排序可以将文件进行分类,最常用的排序有三种:

  • 文件名(以每个字母从A-Z的顺序排序)

  • 按修改日期(以文件的修改日期为排序条件)

  • 按文件类型(先将文件以类型分类,同类文件再以文件名排序)

为了更好的让排序发挥作用,文件的命名就需要有一些规则。文件名的组成大家应该清楚吧?一般格式为“名称.扩展名”。扩展名也是文件名的一部分,但这部分比较固定,没有什么可发挥的。前面“名称”的部分是我们讨论的重点。发散下思维,我们可以想到添加一些相对固定的词来起到分类的作用,我们称之为“缀”,从位置上可分为“前缀”和“后缀”。

常用的缀:预设目录名、文件类型、域名、日期、版本号

例如名称为“demo”,加上前缀或后缀的形式如下:
预设目录名:css_demo |demo_css
文件类型:png_demo | demo_png
域名:blog_demo | demo_blog
日期:20090904_demo | demo_20090904
版本号:v1_demo | demo_v1

前缀的作用:区分同一类型的文件名,由于操作系统的排序规则(同一类型的文件以文件名排序),因此前缀能很好的起到区分的作用。比较符合阅读的习惯。缺点是如果使用键盘导航(直接使用键盘可以跳到对应字母的文件位置),由于前缀相同,会有一定的影响。

后缀的作用:后缀一般用于版本的控制,像存档、多版本、备份等等。缺点是如果名称过长,不太直观。

我们来看看两种方式的差别在哪:

上面几个图是将添加了前缀和后缀的文件放到同一目录下,分别使用三种排序的结果。由于模块化的制作方式,文件一般会以模块为单位分布,使用前缀的时候往往会因为文件类型不一样使同一模块的文件被分散到不同的位置,而使用后缀反而可以很好的将同一模块的文件归到一起。从上面的图可以看出这点。因此在这种情况下,使用后缀会更方便于文件的查找。

标签:文件,命名
0
投稿

猜你喜欢

  • 详解Mysql双机热备和负载均衡的实现步骤

    2024-01-15 09:00:50
  • Element Carousel 走马灯的具体实现

    2024-05-05 09:24:48
  • python 读取竖线分隔符的文本方法

    2023-03-12 14:45:14
  • 如何删除Git本地仓库和删除GitHub上的Git远程仓库Repository(推荐)

    2023-01-30 16:07:59
  • Python Beautiful Soup模块使用教程详解

    2021-07-21 16:00:10
  • Python django搭建layui提交表单,表格,图标的实例

    2022-09-18 19:40:19
  • pycharm激活码免费分享适用最新pycharm2020.2.3永久激活

    2021-12-11 10:17:09
  • python网络应用开发知识点浅析

    2021-07-15 00:09:48
  • Django 解决由save方法引发的错误

    2022-04-07 06:06:56
  • Python+Pygame编写一个Pong游戏

    2023-08-04 15:58:31
  • 如何对python的字典进行排序

    2023-01-28 10:47:31
  • python Selenium等待元素出现的具体方法

    2022-02-22 02:47:20
  • Python实现的特征提取操作示例

    2023-02-07 06:08:04
  • 分享一个可以生成各种进制格式IP的小工具实例代码

    2022-02-19 05:22:37
  • vue实现输入框的模糊查询的示例代码(节流函数的应用场景)

    2024-05-08 09:33:35
  • Python实现使用dir获取类的方法列表

    2023-01-04 12:18:44
  • javascript知识点详解

    2024-05-08 10:11:13
  • Pandas高级教程之Pandas中的GroupBy操作

    2022-04-14 19:22:25
  • MySQL时间格式化date_format使用语法

    2024-01-23 07:31:36
  • Python使用pyfinance包进行证券收益分析

    2023-06-02 16:55:13
  • asp之家 网络编程 m.aspxhome.com