摘要: 合成复用原则的定义 合成复用原则(Composite Reuse Principle,CRP)又叫组合/聚合复用原则(Composition/Aggregate Reuse Principle,CARP)。它要求在软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。如 阅读全文
posted @ 2019-12-05 15:42 南北12345678 阅读(243) 评论(0) 推荐(0)
摘要: 迪米特法则的定义 迪米特法则(Law of Demeter,LoD)又叫作最少知识原则(Least Knowledge Principle,LKP),产生于 1987 年美国东北大学(Northeastern University)的一个名为迪米特(Demeter)的研究项目,由伊恩·荷兰(Ian 阅读全文
posted @ 2019-12-05 15:39 南北12345678 阅读(286) 评论(0) 推荐(0)
摘要: 接口隔离原则的定义 接口隔离原则(Interface Segregation Principle,ISP)要求程序员尽量将臃肿庞大的接口拆分成更小的和更具体的接口,让接口中只包含客户感兴趣的方法。 2002 年罗伯特·C.马丁给“接口隔离原则”的定义是:客户端不应该被迫依赖于它不使用的方法(Clie 阅读全文
posted @ 2019-12-05 15:37 南北12345678 阅读(279) 评论(0) 推荐(0)
摘要: 单一职责原则的定义 单一职责原则(Single Responsibility Principle,SRP)又称单一功能原则,由罗伯特·C.马丁(Robert C. Martin)于《敏捷软件开发:原则、模式和实践》一书中提出的。这里的职责是指类变化的原因,单一职责原则规定一个类应该有且仅有一个引起它 阅读全文
posted @ 2019-12-05 15:34 南北12345678 阅读(272) 评论(0) 推荐(0)
摘要: 依赖倒置原则的定义 依赖倒置原则(Dependence Inversion Principle,DIP)是 Object Mentor 公司总裁罗伯特·马丁(Robert C.Martin)于 1996 年在 C++ Report 上发表的文章。依赖倒置原则的原始定义为:高层模块不应该依赖低层模块, 阅读全文
posted @ 2019-12-05 15:31 南北12345678 阅读(251) 评论(0) 推荐(0)
摘要: 里氏替换原则的定义 里氏替换原则(Liskov Substitution Principle,LSP)由麻省理工学院计算机科学实验室的里斯科夫(Liskov)女士在 1987 年的“面向对象技术的高峰会议”(OOPSLA)上发表的一篇文章《数据抽象和层次》(Data Abstraction and 阅读全文
posted @ 2019-12-05 15:26 南北12345678 阅读(307) 评论(0) 推荐(0)
摘要: 在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据 7 条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。我们将在下面的几节中依次来介绍这 7 条原则,本节首先介绍开闭原则。 开闭原则的定义 开闭原则(Open Closed Princ 阅读全文
posted @ 2019-12-05 15:22 南北12345678 阅读(171) 评论(0) 推荐(0)
摘要: 统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。 统一建模语言能为软件开发的所有 阅读全文
posted @ 2019-12-05 15:07 南北12345678 阅读(2129) 评论(0) 推荐(2)
摘要: 本节是后面各章学习的基础,从整体上介绍软件设计模式的概念与特点、软件设计模式的基本要素,以及 GoF 的 23 种设计模式简介。 软件设计模式的产生背景 “设计模式”这个术语最初并不是出现在软件设计中,而是被用于建筑领域的设计中。1977 年,美国著名建筑大师、加利福尼亚大学伯克利分校环境结构中心主 阅读全文
posted @ 2019-12-05 14:48 南北12345678 阅读(180) 评论(0) 推荐(0)
摘要: 设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。1995 年,GoF(Gang of Four,四人组/四人帮)合作出版了《设计模式:可复用面向对象软件的基础 阅读全文
posted @ 2019-12-05 14:41 南北12345678 阅读(902) 评论(0) 推荐(0)
摘要: 1.浏览器的主要构成部分 1.用户界面 2.浏览器引擎(负责窗口管理、Tab进程管理等) 3.渲染引擎(有叫内核,负责HTML解析、页面渲染) 4.JS引擎(JS解释器,如Chrome和Nodejs采用的V8) 这里面最核心的就是渲染引擎和JS引擎,后面会详细介绍这两个引擎的相关内容。 常见浏览器的 阅读全文
posted @ 2019-12-05 14:30 南北12345678 阅读(1517) 评论(0) 推荐(1)