了解无关的文件扩展名
Understanding Extraneous File Extensions
我经常看到 JavaScript 文件带有额外的文件扩展名(我 认为 "extension" 是正确的术语;如果不正确,有人纠正我因为我找不到标记它们的资源)例如:
someFile.bundle.js
^^^^^^
我记得读过,添加这样的文件扩展名可以使用命名约定(.bundle
指的是 捆绑 其他文件集合的文件)。
我最近看到了更多文件扩展名,例如:
someFile.spec.js
^^^^
现在我质疑这些扩展背后的行为;它们只是用于约定吗?这些类型的扩展的名称是任意的(因为有人可以在那里放置任何旧的扩展并且它不会影响任何东西)?什么时候应该使用这些?是否有某些您应该使用的扩展程序(也许有些您不应该使用)?
它们不是扩展,真的。文件扩展名(至少通常)是文件名末尾的 last .
。这些只是 .js
个文件。剩下的就是纯粹的名字了。
人们这样做是为了对事物进行分类。例如,在您的示例中,我怀疑第一个文件是根据多个输入文件自动生成的;例如,它是一个 捆绑包 。第二个可能包含测试代码,以确保某些外部 API 正常工作。在这两种情况下,我都是在推测,但关键是它只是一种命名约定。它可以是 someFile-bundle.js
和 someFile-spec.js
一样容易。
有一段时间我使用约定 somefile.es6.js
来表示文件包含 ES2015 (ES6) 语法并且在网络上使用之前需要转换,但我的一个客户使用 somefile-es6.js
(我认为这比我的更常见)。这使得在构建脚本等中很容易挑选出它们(.es6.js
或 -es6.js
)。
除了 javascript 文件之外,文件扩展名可用于各种处理指令。例如,我已经开始命名我的许多 php 文件,例如 file.ajax.php
或 file.process.php
,这些文件包含通用头文件,这些文件包含检查文件扩展名以确定是否提供服务的逻辑html,比如常见的导航
我还想起了使用 .blade.php
"file extension" 的 Laravel's blade templating engine,因为它的语法包含超出正常 php.
的操作
我经常看到 JavaScript 文件带有额外的文件扩展名(我 认为 "extension" 是正确的术语;如果不正确,有人纠正我因为我找不到标记它们的资源)例如:
someFile.bundle.js
^^^^^^
我记得读过,添加这样的文件扩展名可以使用命名约定(.bundle
指的是 捆绑 其他文件集合的文件)。
我最近看到了更多文件扩展名,例如:
someFile.spec.js
^^^^
现在我质疑这些扩展背后的行为;它们只是用于约定吗?这些类型的扩展的名称是任意的(因为有人可以在那里放置任何旧的扩展并且它不会影响任何东西)?什么时候应该使用这些?是否有某些您应该使用的扩展程序(也许有些您不应该使用)?
它们不是扩展,真的。文件扩展名(至少通常)是文件名末尾的 last .
。这些只是 .js
个文件。剩下的就是纯粹的名字了。
人们这样做是为了对事物进行分类。例如,在您的示例中,我怀疑第一个文件是根据多个输入文件自动生成的;例如,它是一个 捆绑包 。第二个可能包含测试代码,以确保某些外部 API 正常工作。在这两种情况下,我都是在推测,但关键是它只是一种命名约定。它可以是 someFile-bundle.js
和 someFile-spec.js
一样容易。
有一段时间我使用约定 somefile.es6.js
来表示文件包含 ES2015 (ES6) 语法并且在网络上使用之前需要转换,但我的一个客户使用 somefile-es6.js
(我认为这比我的更常见)。这使得在构建脚本等中很容易挑选出它们(.es6.js
或 -es6.js
)。
除了 javascript 文件之外,文件扩展名可用于各种处理指令。例如,我已经开始命名我的许多 php 文件,例如 file.ajax.php
或 file.process.php
,这些文件包含通用头文件,这些文件包含检查文件扩展名以确定是否提供服务的逻辑html,比如常见的导航
我还想起了使用 .blade.php
"file extension" 的 Laravel's blade templating engine,因为它的语法包含超出正常 php.