目录的名称是“容器”还是“内容”?这个问题困扰着我,因为如果目录的名称在语义上标题为“容器”,那么该名称应该是单数。(打个比方:当提到一个包含你的杂货的实际物理袋时 - 人们可能会将它称为“杂货”袋而不是“杂货”袋。)相反,如果要断言目录名称的名称目录的内容那么使用复数形式会更有意义。
我知道这个问题存在常识性甚至可用性问题;然而,虽然我想听听这两个选项的实际结果,但我更关心语义。
总而言之:目录的名称是否用作容器或内容的标题?
谢谢。
我的第一反应是根据其内容来命名通用容器。但我会为了其中的乐趣而更深入地挖掘。(如果您只想总结结论,请滚动到最后。)
\n首先,我认为 Tum 的汽车和蛋糕示例对我们帮助不大。当然,它们是由更简单的组件制成的,但只是为了创建新的、独立的对象。杂货袋是分子的集合\xe2\x80\x94等等。更有意义的问题是:该对象的根本目的是容纳其他对象吗?换句话说,它是一个通用容器,就像文件系统中的文件夹一样吗?对于蛋糕,你肯定会回答“不” 。你可能会对汽车回答“不”(尽管不可否认,它确实可以载人)。对于购物袋,你肯定会回答“是” 。
\n在您的杂货袋示例中,您说我们将其称为杂货袋而不是杂货袋。当然。以下句子语法正确且发音自然:
\n只有当听者知道我们刚刚去购物并且能够在我们不告诉他们的情况下推断出所述袋子的内容时,第一句话才有意义。如果没有这些信息,据我们所知,这些袋子可能含有毒蛇。第二句话是最具描述性的,但包含冗余信息。任何熟悉杂货和购买过程的人都可以合理地推断它们将装在袋子里。第三句话以最简洁的方式告诉我们我们需要知道的一切。
\n第四句话采用了完全不同的方法,标记了生产杂货的单一活动。但它并没有告诉我们我们购买了什么样的产品,因此它\xe2\x80\x99s 没有那么具有描述性。(有时这种方法是最好的选择,正如在其他示例中看到的那样。)
\n如果您在任何新的 Windows PC 或 Mac 上查看用户的主文件夹,您会发现它预先填充了文档、下载和图片等文件夹。标有“图片”的文件夹告诉我们需要知道的一切。您可以选择为所有目录名称添加后缀“dir”、“folder”或类似的冗余内容,但这不会增加任何有意义的内容。(我已经足够老了,还记得去年的 Mac 用户将通过按 Option-F\xe2\x80\x94 生成的“\xc6\x92”字符\xe2\x80\x94 添加到文件夹名称的末尾。疯狂的时代。)
\n啊,但也有例外!在我的 Mac 上,Apple(当然以其无限的智慧)为三个子文件夹选择了单一名称:Desktop、Library 和 Public。有人怀疑,其基本原理是没有人知道桌面包含什么\xe2\x80\x94,甚至用户常常也不知道!同样,公共文件夹可能包含任何内容。为了获得学术性,我们将其称为异构集合。它\xe2\x80\x99就像你在圣诞节时拿出来的那个大盒子,里面装着各种各样的东西,比如金属丝、小玩意、长袜、包装纸和假雪\xe2\x80\x94更容易标记它\xe2 \x80\x98Christmas\xe2\x80\x99,根据其目的和主题。
\nLibrary文件夹是一个有趣的\xe2\x80\x94,并不是因为Apple没有根据其内容来命名它,而是因为它给了我们一个有趣的现实世界的例子。库的目的是保存其他对象,还是它本身就是一个功能对象?我想说的是介于两者之间。让\xe2\x80\x99s 说我们决定根据内容来标记现实世界的图书馆。我们可以将其称为 \xe2\x80\x98Books\xe2\x80\x99。(大多数图书馆不仅仅包含书籍,但为了简单起见,我们会假设我们的图书馆只包含书籍。)图书馆可以在前面挂一个大标牌,上面写着“书籍”\xe2\x80\x94,但是你可能会假设这些书是出售的,而不是免费借阅的。你可能会这么认为,因为你生活在一个资本主义社会,大多数大牌都试图兜售某种东西。所以语义问题也是语境问题之一。
\n您在问题中没有提供另外一个上下文问题。这些目录存储在哪里?它们是在您的个人计算机上,还是在网络服务器上?为什么这有关系?好吧,在您的 PC 上,您可能会在 GUI 中查看每个文件夹,其中标签附加到单个图标上。但是,如果目录是网站结构的一部分,则用户更有可能只会将名称视为文件路径的一部分(如果他们注意到它们)。这里的问题是,你关心吗?如果关心的话,你希望文件路径读起来像一个句子吗?最好用一个例子来说明这一点:
\nhttp://acme.com/order/explosive/detonator/dx3000\nRun Code Online (Sandbox Code Playgroud)\n虽然每个类别都可以是复数,但通过使用单数目录名称,路径读起来更像英语句子。虽然这似乎有点强迫,但您确实在某些网站上看到了这种方法。
\nTL;DR:当容器的功能或主题比其内容更具描述性时,单一标签(例如“图书馆”、“桌面”、“圣诞节”)效果最佳。集合越异构,这种方法就越有意义。但在大多数情况下,标记集合的复数内容(例如文档、下载、图片)更容易且更具描述性。
\n目录本身不需要名称,因为没有任何内容的目录是无用的。目录的存在是为了将一组文件组合在一起。即使目录当前为空,它也代表这样一个组,只是该组中当前没有文件,这就是它为空的原因。因此,目录的名称应始终描述您可以在该目录中找到的内容。
假设您有一个带盒子的抽屉,并且您使用这些盒子将物理对象组合在一起。要知道每个盒子里面有什么,而不必先打开它看里面,你可以给盒子贴上标签。你会如何标记这些盒子?
如果一个盒子里有铅笔,你应该给它贴上铅笔而不是铅笔的标签,对吗?如果一个框包含回形针,你贴上标签回形针,而不是纸夹,不是吗?这是因为在这些情况下,标签只介绍了一种物品的盒子中找到。目录也是如此。包含图片的目录很可能应该命名为Pictures,因此您知道可以在其中找到的文件属于图片类型。
但有时您将项目组合在一起,不是因为它们属于同一类型,而是因为它们属于同一个“实体”。例如,如果您有一个包含在2012年与您的日本之行的所有项目一个大箱子,你会标记为“日本之行,2012 ”或者只是“日本2012 ”。其实你可以给它贴上“ Trip to Japan in 2012 Items ”的标签,但是“Items”是多余的,很明显你会在里面找到物品。与将“文件”添加到目录名称相同的方式是多余的。因此,如果您不是因为文件本身有一些共同点而对文件进行分组,而是因为它们属于一个共同的“实体”,则通常以该实体命名目录,因为只有一个这样的实体,所以它将是单数。
包含彼得生日图片的目录很可能被命名为Pictures/Peter's Birthday。另一方面,如果您年复一年地保留彼得每个生日的照片,您宁愿使用像Pictures/Peter's Birthdays/2016这样的结构。注意它是如何突然变成了“生日小号”为现在的目录名称再次说明项目种类的内部,没有发现一个单独的事件/目的。
作为一般经验法则:始终以这样一种方式命名目录,即目录名称的读者非常清楚他们可以期望在该目录中找到什么样的文件和其他目录,因此他们可以决定它是否是通过阅读目录名称来“去那里”或不“去那里”很有趣。
如果你命名一个目录Recipe,读者希望在里面找到什么?我希望找到一个或多个文件,所有文件都属于一个配方,例如一个简短的成分列表、一个较长的说明文本和一些支持照片。相反,如果您将目录命名为Recipes,读者希望在那里找到什么?我希望有几个配方,或者多个文件,每个文件包含一个配方或多个子目录,每个文件都包含属于一个配方的文件。通过这个简单的例子你可以清楚地看到,是否选择复数会影响读者的期望。
小智 1
有趣的问题。
如果您将类视为标签名称的替代品(您在使用 a<div>或 a时会执行此操作<span>,它们没有语义含义),则您的类必须描述元素的内容。
但同时,它本身的元素就是内容。如果你看着一辆车,你会说“这是一辆车”,而不是说“这些是汽车零件”。或者,如果您吃蛋糕,您将其称为“蛋糕”而不是“配料”。
所以我猜语义类名应该是单数而不是复数,因为它总是只有一个元素。这可能会导致在类名称中使用大量“包装器”,因为为元素找到合适的名称并不总是那么容易。
我希望这能回答您的问题,如果没有,您可能想阅读以下内容:http://css-tricks.com/semantic-class-names/
| 归档时间: |
|
| 查看次数: |
3408 次 |
| 最近记录: |