模块化思想

一、前言(演化思想)

  • 全局变量(属性、方法)
  • 同名变量名冲突(值会被后一个覆盖)
  • 对象、变量之间的关系不清晰
  • 文件顺序的依赖
  • 命名空间
  • 理论上解决了命名冲突的问题,但是对象的属性全部向外暴露,不安全
  • 划分私有命名空间
  • 解决了命名冲突的问题
  • 解决了属性向外暴露,容易被修改、不安全的问题
  • ** 项目开发中,我们负责将各种功能封装到对象的属性中,匿名自执行函数,避免同名函数,在自执行函数执行的时候,我们还可以做一些init的操作 **
  • 扩展与维护(为了增加程序的健壮性)
  • 在注入的时候做了判断 (window.cal ||{})
  • 以参数注入,防止没有传参,带来的undefined.的异常
  • 依赖注入的思想:通过由外部传入对象,再给对象添加功能以后返回
  • 对于维护:坚持开闭原则(对添加开发、对修改封闭)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 刚才突发奇想,想到“a.js中定义的函数可以在b.js中调用吗?”这个问题,于是亲自实验了一下。 写完这个demo...
    趁你还年轻233阅读 1,638评论 2 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,523评论 19 139
  • 世界在变化,变化好快,想赶上世界的变化节奏。赶不上很焦虑。有什么方法?
    蓝田玉Cayla阅读 942评论 0 0
  • 文顶顶 唐巧 王巍 SWIFTER sunny ibireme 里脊串的开发随笔 叶孤城 晓月 Bifidy 星光...
    xukuangbo_阅读 2,271评论 0 0