谈谈架构设计相关
谈谈组件封装
- 基于组件库二次开发,能够满足业务场景的,来定制化业务组件
- 比如一个数据模块的页面,每个页面都有表格展示不同的数据,如果不封装组件,需要每个地方都写一遍,万一需求数据展示变动,每个地方都要改,有了这个业务组件,只需改一次即可
- 在组件里,预先定义好常用的属性、常用的配置,在使用的时候,不再需要传重复的属性了
谈谈组件设计
设计、原则、规范
- 扩展性
- 灵活性
- 易用性
- 通用性,能覆盖大部分场景
- 容错性,有些属性和方法进行容错性,否则容易导致报错
- 兼容性
谈谈技术选型
技术选型过程
- 竞品分析
- 社区活跃
- 兼容性问题
- npm下载量
- 包的体积大小
- issures数量
- 最近的一次提交
- 是否还维护
谈谈做review
会对提交pr进行代码的review, 以及每周会组织一次代码review的过程
- 最注重的是代码的可维护性(变量命名、注释、函数单一性原则等)
- 扩展性:封装能力(组件、代码逻辑是否可复用、可扩展性)
- ES 新特性(es6+ 、ES2020, ES2021 可选链、at)
- 函数使用规范(比如遇到用 map 拿来当 forEach 用的)
- 变量使用规范 (var let const的使用)
- 性能问题,怎样运用算法,写出更加优雅,性能更好的代码
- 容错性处理 (对获取数据以及操作方法的时候进行容错性处理,有时候后端返回的数据可能为null的情况,前端需要判空的情况,否则会出现报错一些错误)
- 大量的if else代码这种可以通过策略模式来简化
- 代码是否存在内存泄漏的问题,如定时器、事件监听需及时清除