关于公用代码应放在根目录单独文件夹的感悟

最近在阅读广发证券出品的《揭秘Angular2》书籍,里面“单元测试”章节提到:

测试代码和被测代码是放在同个层级目录中,还是放在源代码根目录所创建的一个独立的test目录中,读者可以根据项目代码的组织结构自行确定。

由此,我特意思考了一番:

1. 就拿单元测试为例,假如要写detail.component.ts的单元测试例子,一般就在该文件的同一个目录中新建detail.component.spec.ts来写。

2. 如果要定义里面使用到的数据类型,则定义detail.d.ts文件。

这里乍一看,没有问题。但根据我长久的大型项目开发经验来看,第2点的数据类型这里,有问题。如果写类型文件,都放在各自组件内的话,可能会出现重复编写的情况,因为有些数据是公用的,但多人开发的话,容易出现各自定义其实是相同的数据类型的情况。

所以,对于这种需要公用的数据/方法/配置,则最好在根目录上设立统一的文件夹,不管哪一个组件需要编写或者调用,都从统一的文件夹新建/引用。而不是写在组件内部里。

而对于第1点单元测试案例,这里不涉及公用,就算写重复也问题不大,所以跟着组件同层级目录放置即可。

综上,以下列出一些常见的建议放在根目录src的单独功能文件夹:

app 开发的系统前端代码

config 管理系统全部配置

text 管理系统全部文本、话术

typings 管理系统全部类型文件

utils 管理技术工具

libs 管理第三方库工具

提示:建了单独的功能文件夹后,不要直接在该文件夹下直接新建文件,不然后期会非常多文件。理应尽量拆分小单独文件,并归入相应的分类中。比如把业务和技术的分开,分别新建busin和tech文件夹,然后再放置文件。一般建议不超过3层目录。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值