Table of Contents generated with DocToc

一、文件即模块

纳入模块化的资源包括:

  • 后端模板
  • js
  • 前端 js 模板
  • css

模块 ID 即文件被引用时的静态地址:

  • 后端模板即 @include 的路径
  • js 中指即 requirejs 打包后得到的 define 名称
  • js 模板与 js 一样
  • css 中即 @import 的路径

修改任何模块要全局查找,要处理所有引入了该模块的代码

二、可以显示声明、显示统一的地方不要做各种兼容

比如可以规定在 API 使用 page_size 就不要在 JS 中兼容去让 API 混乱使用多种命名。

三、先全局,后局部

不要为了局部性能优化,降低可维护性

比如在多个 js 中使用统一的实例化类名称,方便批量查找(但如果要靠谱地进行依赖搜索,必须使用模块 ID 来做全局搜索)

obj.pagerView = new ns.views.Pager();

全局搜索 obj.pagerView 时,很快定位其他文件相同逻辑代码。

不仅仅 js 要这样,css 中的选择器、html 里的属性名等都要如此。

更多:https://github.com/Black-Mirror/FrontEnd-Standard


肖建锋
550 声望14 粉丝

全栈,iTerm2 oh-my-zsh