模块化开发思维
- 不管在前端,还是在后端,必须把界面、数据抽离成一个个模块,然后由模块构成一个个页面。提高开发效率。
原则
-
让开发者感觉舒适
- 提供各类需要的工具:
- mac电脑高配
- webstorm 正版
- sketch 正版
- vpn 时刻保证
- google 浏览器
- 提供各类需要的工具:
-
让开发者感觉有成就感
- 产品的质量
-
让开发者有提升
- 每周组织讨论
-
国富论,分工,相似的任务,同一个任务交由同一个人处理.
前端开发流程
需求评审->视觉评审->接口开发->模拟数据->前端开发
沟通成本
- 可以使用远程办公,降低办公成本
- 与产品沟通
- 产品必须要有原型图,把大致的逻辑描绘清楚,最后有个类似zeplin的原型平台
- 产品在这个平台上发布更新,所有的开发都可以接收到
- 与视觉沟通
- 使用类似于Zeplin的线上工具,前端开发与视觉杜绝以文件形式交流,沟通,会浪费很多时间.
- 视觉在这个平台上发布更新,所有的开发都可以接收到
- 视觉如果使用iocn,需要标明名称
- 视觉如果使用本地图片,需要提供本地图片
- 与后端沟通
- 必须要有接口文档swapper,后端编辑接口文档可以自动生成mock数据.
- 各个字段的描述必须要有,如果能够把各个字段对应视觉显示的地方,那就更好了(应该这样,这样的话,后端更深刻理解各个接口字段代表的意思,问题可以提前暴露出来,最后,前端可以更早)
- 较少不必要的交流沟通,较少会议,可以使用视频会议
框架层面
- 自动化
- 能够自动的全部自动化,打包发布一键自动生成,jenkins
- 统一框架
- 公司所有的人(或者同一个业务)使用一个框架
- 所有的组件复用(先开发组件,后开发业务)
- 基本组件使用不要全部自行开发,可以使用现有的UI框架,改造此框架,在此框架基础上前期与视觉沟通,改造此视觉框架.
- 如果同时开发H5与app,必须一套代码,三端公用
- 资源上往H5,app上倾斜,网页现在用的人太少
- 逻辑与UI分离
- 能够配置的,不要写hard code
规范
- css
- es6
- react
- 后端
- 交互,视觉
- .editorconfig
- eslint airbnb
分工
- 框架维护,组件开发
- 业务开发人员
- 组件与框架维护需要单独的人员
版本控制
- 一个月只有一个大版本,如果累积过多可以发布一个小版本来修复(所有)
- 不要让公司人员
信息汇总
- 日历
- bug
- 进度
- 产品,视觉,后台开发,前端开发,
- 每个人员的开发工作记录
网络,语言
- 翻墙
- 搜索引擎,必须google
- 英文
任务分配
- 分配的任务必须明确,不能是需要做的事情
- 根据能力分配不同的任务,在任务不紧急的情况下,可以培养人,让其做部分较难的工作
- 分配任务,必须给与对应的需求号,以便追踪,安排对应的测试等
tools
-
视觉:sketch
-
视觉沟通:zeplin
-
前端内部项目管理:https://shimo.im/,https://trello.com/。
-
各个项目需要记录:(不使用本地文档,本地文档更新到发送给相关人员需要消耗太多的事件)
- 所有项目记录:(在线地址)
- 项目记录:(一个在线地址)
- 文档
- 需求文档地址:https://shimo.im/
- 视觉地址:zeplin
- 相关人员:
-
产品经理 (初始产品经理,当前维护人员)
-
视觉 (初始视觉,当前维护人员)
-
后台 (初始开发人员,当前维护人员)
-
前端 (初始开发人员,当前维护人员)
-
测试 (初始测试人员,当前维护人员)
-
运维配置 (初始运维配置人员,当前维护人员)
-
- 文档
- 项目记录:(一个在线地址)
- 所有项目记录:(在线地址)
-
前端bugs管理,可以考虑使用 issue
-
代码管理:git