- 博客(6)
- 收藏
- 关注
原创 设计原则 - 依赖倒置原则(DIP)
依赖倒置原则依赖倒置原则(Dependence Inversion Principle, DIP)原始定义是High level modules should not depend upon low level modules.Both should depend upon abstractions.Abstractions should not depend upon details.D...
2018-07-17 18:04:27 626
原创 Swift - 抽象工厂模式
什么是抽象工厂模式抽象工厂模式(Abstract Factory Pattern) 是一种比较常见的设计模式,其定义如下:Provide an interface for creating families of realted or dependent objects without specifying their concrete classes.(为创建一组相关或相互依赖的对象提供一个...
2018-07-17 15:33:44 987
原创 设计原则 - 里氏替换原则
在面向对象的语言中,继承是必不可少的、非常优秀的语言机制,它有如下优点:代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性;提高代码的重用性;子类可以形似父类,但又异于父类,“龙生龙,凤生凤,老鼠生来会打洞”是说子拥有父的“种”,“世界上没有两片完全相同的叶子”是指明子与父的不同;提高代码的可扩展性,实现父类的方法就可以“为所欲为”了,君不见很多开源框架的扩展接口都是通过继承父类来完成的...
2018-07-16 13:00:01 403
原创 设计原则 - 单一职责原则
单一职责原则定义:单一职责原则的英文名称是Single Responsibility Principle,简称是SRP。SRP原则的解释是:There should never be more than one reason for a class to change。即不要存在多于一个导致类变化的原因,简单来说:就是一个类只负责一项职责。问题由来:假如一个类T负责两个不同的职责:职责P1...
2018-07-13 17:33:06 267
原创 iOS - 备忘录模式(Memento Pattern)
在响应某些事件时,应用程序需要保存自身的状态,比如当用户保存文档或者程序退出时。具体一点:当游戏退出之前,可能需要保存当前会话的状态,如游戏等级、敌人的数量、可用武器的种类等。当游戏再次打开时,玩家可以从离开的地方接着玩。很多时候,保存程序的状态真的不需要什么特别的方法,任何简单有效的方法都可以,但是保存的信息应该只对原始程序有意义。模式定义在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对...
2018-07-05 17:34:03 760
原创 iOS - 策略模式(Strategy Pattern)
策略模式定义定义一系列的算法,把它们一个个封装起来,并且使它们可相互替代。策略模式的三个角色策略模式使用的是面向对象的继承和多态机制,一起来了解一下策略模式中的三个角色:Context封装角色简单理解为上下文,起承上启下的作用,屏蔽高层模块对策略、算法的直接访问,封装可能存在的变化。Strategy抽象策略角色策略,算法家族的抽象,通常为接口,定义每个策略或者算法必须具有的方法和属性。Concre...
2018-07-03 15:02:02 856
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人