写这篇博客的动机很简单,就是我周末闲的无聊,爬了github上star数前1000的js项目的全部文件的名称,看看大佬们都喜欢给文件和目录取什么名字,我跟着学两招也好显得我比较专业。css
注意是js项目啊,你要是搞java的搞PHP的,也跟着学搞很差会被拿去祭天。vue
排除掉了.babelrc
,package.json
,.github
这类文件,获得了93117个文件名。java
而后我对文件名计数,同一个项目中屡次出现的名称只计算一次。也就是1000个项目中,出现频次最高的名称也不会超过1000。git
结果这里写不下,能够点击这里看全部结果,我画了个图你们感觉一下就好了github
有点意外,出现次数最多的是test
,565次,其次才是是src
,556次vue-cli
顾名思义,src
是源代码,test
就是测试,一样js
,css
,img
这些目录名都很直观。npm
可是也有一些不太直观的名字在这些项目中也大量出现,好比legacy
,benchmarks
,fixtures
等等。json
下面列出了一些经常使用的名称,并非按出现频次排序,可是列出来的都是出现频次很是高的
单复数形式都出现了的只列出次数最多的
注意,都是目录名称,不是文件名设计模式
源代码,用src
居多api
测试文件,也常常用__test__
,facebook的测试框架jest
默认的测试文件目录就是__test__
文档
库文件,library的缩写
用来放打包编译后的文件,应该是distribution的缩写
构建脚本
工具代码
MVC对应的models,views,controllers,还有中间件middlewares
路由
用来放服务端代码
适配器,适配器模式是一种很经常使用的设计模式
栗子:https://github.com/hubotio/hu...
通常用来放兼容历史版本或兼容旧浏览器的代码
栗子:https://github.com/julianshap...
配置文件
benchmarks测试,又叫基准测试或性能测试。用来测试版本的性能变化
单元测试,通常在test
目录下
端对端测试,通常在test
目录下
资源,通常用来放图片或css文件
静态资源
示例
组件
插件
命令脚本,命令行工具常常会用到
栗子:https://github.com/vuejs/vue-...
公用的文件
不少项目会打包出多个npm包,用来减少体积,通常会用packages
来放不一样的包
栗子:https://github.com/babel/babe...
杂项,miscellaneous的缩写
栗子:https://github.com/babel/babe...
核心文件
栗子:https://github.com/mrdoob/thr...
还有一大堆,总共500多个,我不一一解释了,有兴趣能够点击看统计结果
其实大部分文件名看名字就能知道意思,也有一些是约定俗成的缩写。
相比之下更有意义的是对变量和函数名称的分析,我下次把这些项目的全部js文件内容爬下来而后再作一个分析。
打个广告:
个人博客 https://github.com/hujiulong/...
欢迎star