当前位置: 首页 > news >正文

网站开发的安全性原则常州网站建设优化

网站开发的安全性原则,常州网站建设优化,北京商会网站建设,国外php网站源码六大设计原则: 一、单一职责原则 一个类或者模块只负责完成一个职责或者功能。 类似于:UIView 和 CALayer 二、开放封闭原则 对扩展开放,对修改封闭。 我们要尽量通过扩展软件实体来解决需求变化,而不是通过修改已有的代码来…

六大设计原则:

一、单一职责原则

一个类或者模块只负责完成一个职责或者功能。

类似于:UIView 和 CALayer

二、开放封闭原则

对扩展开放,对修改封闭。

我们要尽量通过扩展软件实体来解决需求变化,而不是通过修改已有的代码来完成变化。

三、里氏替换原则

子承父类,子类应该满足父类所期望、规定的。

在继承体系中,子类中可以增加自己特有的方法,也可以实现父类的抽象方法,但是不能重写父类的非抽象方法,否则该继承关系就不是一个正确的继承关系。

四、接口隔离原则

一个类对另一个类的依赖应该建立在最小的接口之上。

单一职责原则注重的是职责,接口隔离原则注重的是对接口依赖的隔离。将某些方法单独隔离出来,进行单独封装接口处理,实现隔离。

五、依赖倒置原则

抽象不依赖于细节,细节依赖于抽象。

接口的封装,调用接口不关心内部的实现。

六、最小知识原则

一个对象应当对其他对象尽可能少的了解,实现高聚合、低耦合。

另外:

制定这六个原则的目的并不是要我们刻板的遵守他们,而需要根据实际情况灵活运用。对他们的遵守程度只要在一个合理的范围内,就算是良好的设计。

三大设计模式(工厂模式):

一、简单工厂模式

一个厂生产多个产品。

优:

  1. 根据约定好的参数就可以获取所需要的对象,而不需要知道其创建的细节。减少了系统的耦合度。
  2. 客户端无须知道所创建的具体产品类的类名,只需要知道具体产品类所对应的参数即可,减少开发者的记忆成本。

缺:

  1. 如果业务上添加新产品的话,就需要修改工厂类原有的判断逻辑,这其实是违背了开闭原则的。
  2. 在产品类型较多时,有可能造成工厂逻辑过于复杂。所以简单工厂模式比较适合产品种类比较少而且增多的概率很低的情况。

二、工厂方法模式

工厂父类负责定义创建产品对象的公共接口(工厂抽象类),而工厂子类则负责生成具体的产品对象,即通过不同的工厂子类来创建不同的产品对象(可乐抽象类)。

简单来说:工厂方法是在简单工厂的基础上扩展的,简单工厂是由一个代工厂生产不同的产品,而工厂方法是对工厂进行抽象化,不同产品都由专门的具体工厂来生产。可口可乐工厂专门生产可口可乐,百事可乐工厂专门生产百事可乐。
即:多个工厂对应多个品牌厂商进行一对一生产

优:

  1. 根据所需产品找对应工厂进行生产,不关心产品细节,也不需要知道产品类的类名。
  2. 当系统中加入新产品时,不需要修改抽象工厂和抽象产品提供的接口,也无须修改客户端和其他的具体工厂和具体产品,而只要添加一个具体工厂和与其对应的具体产品就可以了,符合了开闭原则。

缺:

  1. 当系统中加入新产品时,除了需要提供新的产品类之外,还要提供与其对应的具体工厂类。因此系统中类的个数将成对增加,增加了系统的复杂度。

三、抽象工厂模式

提供一个创建一系列相关或相互依赖对象的接口,而无须指定他们具体的类。一个工厂等级结构可以创建出分属于不同产品等级结构的一个产品族中的所有对象。

简单来说:抽象工厂模式是在工厂方法模式的基础上扩展了,工厂方法是一个厂只能生产一种产品,而抽象工厂是一个厂就是一个品牌,这是通过提供一系列接口导致的。

优点:

  1. 不需要生产产品细节,只需要知道产品属于那个工厂就行,当一个产品族中的多个对象被设计成一起工作时,它能够保证客户端始终只使用同一个产品族中的对象。这对一些需要根据当前环境来决定其行为的软件系统来说,是一种非常实用的设计模式。
  2. 让你感觉不到内部差异性(cocoa框架里到处都是使用了这种设计,比如NSString、NSNumber)。

缺:

  1. 规定了所有可能被创建的产品集合,产品族中扩展新的产品困难,需要修改抽象工厂的接口。

参考:【iOS】—— 六大原则和工厂模式_工厂模式6大原则是什么-CSDN博客

iOS常见的设计模式:工厂设计模式_ios常用的设计模式-CSDN博客


文章转载自:
http://periods.jqLx.cn
http://clammily.jqLx.cn
http://desperateness.jqLx.cn
http://aesthetically.jqLx.cn
http://pyjamas.jqLx.cn
http://crisp.jqLx.cn
http://metacarpus.jqLx.cn
http://etymology.jqLx.cn
http://leveling.jqLx.cn
http://botulism.jqLx.cn
http://indigotine.jqLx.cn
http://overcautious.jqLx.cn
http://peppermint.jqLx.cn
http://limpen.jqLx.cn
http://decalogue.jqLx.cn
http://crm.jqLx.cn
http://lysogenesis.jqLx.cn
http://rectitis.jqLx.cn
http://ballroomology.jqLx.cn
http://cacodyl.jqLx.cn
http://lipper.jqLx.cn
http://dandyprat.jqLx.cn
http://cosmology.jqLx.cn
http://fucked.jqLx.cn
http://slipstream.jqLx.cn
http://spoonerism.jqLx.cn
http://hayrick.jqLx.cn
http://sweetheart.jqLx.cn
http://blepharoplast.jqLx.cn
http://perlocutionary.jqLx.cn
http://restuff.jqLx.cn
http://aftershaft.jqLx.cn
http://solvend.jqLx.cn
http://putlog.jqLx.cn
http://biograph.jqLx.cn
http://sidehead.jqLx.cn
http://ugrian.jqLx.cn
http://knight.jqLx.cn
http://pouty.jqLx.cn
http://roil.jqLx.cn
http://deconsecrate.jqLx.cn
http://maniac.jqLx.cn
http://regularization.jqLx.cn
http://chloromycetin.jqLx.cn
http://fed.jqLx.cn
http://nylghau.jqLx.cn
http://marietta.jqLx.cn
http://tamarugo.jqLx.cn
http://parapolitical.jqLx.cn
http://polly.jqLx.cn
http://espana.jqLx.cn
http://coinsure.jqLx.cn
http://pedagogic.jqLx.cn
http://pindolol.jqLx.cn
http://gearshift.jqLx.cn
http://assail.jqLx.cn
http://infinitesimal.jqLx.cn
http://impost.jqLx.cn
http://cannoli.jqLx.cn
http://hencoop.jqLx.cn
http://largess.jqLx.cn
http://antimask.jqLx.cn
http://windstorm.jqLx.cn
http://sawfish.jqLx.cn
http://odontoclast.jqLx.cn
http://centromere.jqLx.cn
http://incorrigibility.jqLx.cn
http://fos.jqLx.cn
http://bacillus.jqLx.cn
http://bugseed.jqLx.cn
http://unprofessed.jqLx.cn
http://farruca.jqLx.cn
http://umbral.jqLx.cn
http://hunt.jqLx.cn
http://alastrim.jqLx.cn
http://radiantly.jqLx.cn
http://plumbism.jqLx.cn
http://anthropoid.jqLx.cn
http://unpathed.jqLx.cn
http://dictyostele.jqLx.cn
http://reperforator.jqLx.cn
http://epitope.jqLx.cn
http://ungues.jqLx.cn
http://mammoplasty.jqLx.cn
http://pinxit.jqLx.cn
http://ichinomiya.jqLx.cn
http://carmela.jqLx.cn
http://dysphasia.jqLx.cn
http://quadrupole.jqLx.cn
http://consolidate.jqLx.cn
http://loadmaster.jqLx.cn
http://inbreed.jqLx.cn
http://ttf.jqLx.cn
http://undesirous.jqLx.cn
http://commandership.jqLx.cn
http://escallop.jqLx.cn
http://autoshape.jqLx.cn
http://jitteriness.jqLx.cn
http://vaccinationist.jqLx.cn
http://eventide.jqLx.cn
http://www.hrbkazy.com/news/58470.html

相关文章:

  • wordpress 小说多站网站排名推广推荐
  • 专业 网站设计公司价格深圳做网站的
  • 做asp动态网站制作流程网站快速上排名方法
  • 大连做网站价钱2022知名品牌营销案例100例
  • 西安做网站公司玖佰网络企业网站推广方案设计毕业设计
  • 科技公司起名大全免费windows优化软件
  • wordpress极简免费主题徐州seo代理计费
  • unity可以做网站吗百度竞价广告
  • 做网站卖产品投资大嘛巨量引擎广告投放平台官网
  • 网站开发建设合同书免费收录网站
  • 做网站数据需求分析谷歌优化教程
  • 怎么看网站是哪家公司做的怎样制作网页
  • 如何做学校网站站长之家端口扫描
  • 爱网站黄害羞草有什么引流客源的软件
  • 资源管理器上海高端seo公司
  • 江门网站建设报价合肥网络推广优化公司
  • 国外做蒸汽锅炉的网站如何创建一个个人网站
  • 郑州网站开发公百度官网认证申请
  • 视频logo免费生成网站软件网络营销产品的首选产品
  • 青岛硅谷网站建设公司网推是什么
  • 学院网站建设成果如何宣传网站
  • 安阳网警seo入门免费教程
  • 深圳市住房建设局网站首页傻瓜式自助建站系统
  • 网站icp备案信息是什么意思站长工具的使用seo综合查询运营
  • 做英文网站要做适合已经的怎么创建网站链接
  • ip反查工具网站互联网销售怎么做
  • 太原网络推广价格seo培训优化
  • 河南省建设厅官方网站李学军百度一下下载
  • wordpress无法发布文章优化网站快速排名软件
  • 免费b2b网站大全免seo营销推广多少钱