前端项目的管理分为两个维度:项目内的管理与多项目之间的管理。
项目内的管理
在一个项目内,当有多个开发者一起协作开发时,或者功能越来越多、项目越来越庞大时,保证项目井然有序的进行是相当重要的。
一般会从下面几点来考证一个项目是否管理得很好:
可扩展性:能够很方便、清晰的扩展一个页面、组件、模块
组件化:多个页面之间共用的大块代码可以独立成组件,多个页面、组件之间共用的小块代码可以独立成公共模块
可阅读性:阅读性良好(包括目录文件结构、代码结构),能够很快捷的找到某个页面、组件的文件,也能快捷的看出项目有哪些页面、组件
可移植性:能够轻松的对项目架构进行升级,或移植某些页面、组件、模块到其他项目
可重构性:对某个页面、组件、模块进行重构时,能够保证在重构之后功能不会改变、不会产生新 bug
开发友好:开发者在开发某一个功能时,能够有比较好的体验(不好的体验比如:多个文件相隔很远)
协作性:多人协作时,很少产生代码冲突、文件覆盖等问题
可交接性:当有人要离开项目时,交接给其他人是很方便的
1.1 可扩展性
对于前端项目而言,可扩展性是并不难的,因为很多时候前端的代码、文件分块都是按照页面来的,所以天然就是一块一块的。
但这里还是要提一下,因为有些开发者不喜欢分块,把应该分块的东西杂揉在一起,比如:
src/
main/ # main 目录
css/ # css 集合
alpha.css
beta.css
…
js/ # js 集合
alpha.js
beta.js
…
alpha.html # alpha 页面
beta.html # beta 页面
…
更好的方式:
src/
main/ # main 目录
alpha/ # alpha 页面
index.css # css 入口文件
index.js # js 入口文件
index.html # html 入口文件
…
beta/ # beta 页面
index.css
index.js
index.html
…
…<