如何去设计一个组件封装_前端组件化设计思路

站长手记 作者: 2024-08-28 07:05:01
目前前端三大框架(Vue.js, Angular.js, React.js)都在引领着前端的组件化开发方向,组件化的前端开发方式的确为业务实现带来了前所未有的方便,其实组件化开发早已经具有(YUI),但如何封装一个优秀的组件,可能并不是每位前端开发者都能够做好的。
  • 组件化是对实现的分层,是更有效地代码组合方式
  • 组件化是对资源的重组和优化,从而使项目资源管理更合理
  • 组件化有利于单元测试
  • 组件化对重构较友好

组件与模块

  • 可复用的模块,完成既定功能
  • 有明确的接口规定
  • 有上下文依赖、外部依赖资源的定义
  • 可以独立发布

组件设计的原则

  1. 适用单一职责原则
  2. 适用开放封闭原则
  3. 追求短小精悍
  4. 避免太多参数
  5. 缩小信赖范围和向稳定方向信赖
  6. 适用SPOT法则 (Single Point Of Truth,就是尽量不要重复代码,出自《The Art of Unix Programming》)
  7. 追求无副作用
  8. 追求引用透明
  9. 避免暴露组件内部实现
  10. 避免直接操作DOM
  11. 适用好莱坞法则 (好莱坞法则: Don’t call us, we’ll call you, 又称IoC, Inversion of control, 控制反转)
  12. 入口处检查参数的有效性,出口处检查返回的正确性
  13. 充分隔离变化的部分
  14. 组件和数据分享,信赖一致性的数据结构

自省的几个问题

这个组件可否(有必要)再分?

这个组件的依赖是否可再缩减?

这个组件是否对其它组件造成侵入?

这个组件可否复用于其它类似场景中?

这个组件当别人用时,会怎么想?

假如业务需要不需要这个功能,是否方便清除?

原创声明
本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接:http://www.jiecseo.com/news/show_69992.html
前端组件化 组件封装