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

mac 搭建个人网站长沙网站推广服务公司

mac 搭建个人网站,长沙网站推广服务公司,锦州网站建设哪家好,网站报价系统iOS高级开发工程师面试——架构设计 一、 设计模式是为了解决什么问题的?二、设计模式有 7 大原则三、常见的设计模式有哪些?单例模式简单工厂模式抽象工厂模式代理模式(delegate)观察者模式(KVO)策略模式四、谈谈单例的优缺点?五、聊聊 MVC、MVP、MVVM设计模式?MVC:M…

iOS高级开发工程师面试——架构设计

  • 一、 设计模式是为了解决什么问题的?
  • 二、设计模式有 7 大原则
  • 三、常见的设计模式有哪些?
    • 单例模式
    • 简单工厂模式
    • 抽象工厂模式
    • 代理模式(delegate)
    • 观察者模式(KVO)
    • 策略模式
  • 四、谈谈单例的优缺点?
  • 五、聊聊 MVC、MVP、MVVM设计模式?
    • MVC:
    • MVP
    • MVVM
  • 六、你的app架构是什么?有什么优缺点?为什么这么做?怎么改进?

一、 设计模式是为了解决什么问题的?

编写软件过程中,程序员面临着来自耦合性内聚性以及可维护性可扩展性重用性灵活性等多方面的挑战,设计模式是为了让程序具有更好的:

  1. 代码重用性(相同功能代码,不用多次编写)
  2. 可读性(编程规范性)
  3. 可扩展性(增加新功能时十分方便)
  4. 可靠性(增加新功能后,对原来的功能没有影响)
  5. 实现高内聚,低耦合的特性

二、设计模式有 7 大原则

  1. 单一职责原则
    一个类只负责一个职责,一个函数只解决一个问题
  2. 接口隔离原则
    大接口改多个小接口,原因外部不需要大接口这么多方法,更易控制
  3. 依赖反转原则
    即面向接口编程,尽量不要声明具体类,而是使用接口,实现解耦
  4. 里氏替换原则
    能出现父类的地方就一定可以用子类代替,即不要重写父类中的已实现的方法
  5. 开闭原则
    面向扩展开放,面向修改封闭。即不要修改一个已实现的类,更不要修改类中的方法,应该选择创建新类或者创建新方法的方式解决
  6. 迪米特法则
    又叫最少知道原则,即对外暴露的public方法尽量少,实现高内聚;且只和直接朋友通信
  7. 合成复用原则
    即不要重复自己,不要在项目内copy代码,应该选择将要copy的代码抽离出来,实现多个类复用

三、常见的设计模式有哪些?

单例模式

意图:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
主要解决:一个全局使用的类频繁地创建与销毁,比如登陆用户的数据信息等。

简单工厂模式

简单工厂模式又叫静态工厂方法模式,就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建。

比如,一台咖啡机就可以理解为一个工厂模式,你只需要按下想喝的咖啡品类的按钮(摩卡或拿铁),它就会给你生产一杯相应的咖啡,你不需要管它内部的具体实现,只要告诉它你的需求即可。

抽象工厂模式

抽象工厂模式是在简单工厂的基础上将未来可能需要修改的代码抽象出来,通过继承的方式让子类去做决定。

比如:以上面的咖啡工厂为例,某天我的口味突然变了,不想喝咖啡了想喝啤酒,这个时候如果直接修改简单工厂里面的代码,这种做法不但不够优雅,也不符合软件设计的“开闭原则”,因为每次新增品类都要修改原来的代码。这个时候就可以使用抽象工厂类了,抽象工厂里只声明方法,具体的实现交给子类&

http://www.dtcms.com/wzjs/317811.html

相关文章:

  • 个人做网站猛赚钱营销网络推广方式有哪些
  • 广西响应式网站哪家好优化方案模板
  • 天长市建设局网站2022年最新十条新闻
  • 自己做网站的选修课站长工具忘忧草社区
  • 互联网企业网站免费发seo外链平台
  • win服务器做网站一份完整的营销策划书
  • 合肥html5网站建设武汉大学人民医院
  • 软件系统网站建设网站制作需要多少钱
  • 网站建站好处北京seo招聘
  • 盘锦网站制作什么叫百度竞价推广
  • 艺术品展览公司网站建设百度竞价点击工具
  • 网站建设收费标准报价网页设计软件
  • 建设一个网站需要哪些硬件设备竞价广告
  • 有域名了怎么建立网站网站推广优化流程
  • 大连网站制作公司58莱阳seo排名
  • 怎么建设局域网站武汉网站推广
  • 如何建设教育信息网站推广类软文案例
  • 网站英文地图怎么做娄底seo
  • 织梦网站错位关键词seo排名
  • 金融投资公司注册条件登封网站关键词优化软件
  • 网站建站思路某个产品营销推广方案
  • 国家城乡住房建设部网站首页安卓优化清理大师
  • 0797 网站制作360优化大师官方下载手机
  • 做网站做手机app要学什么软件百度云官网入口
  • 电子商务网站开发毕业论文怎么拿到百度推广的代理
  • 做网站什么时候要用到虚拟主机最新病毒感染
  • 现在.net做网站的多吗外链发布网站
  • 广东涂料网站建设百度教育
  • 如何不要钱做网站seo引擎
  • 云南网站设计选哪家外贸seo软文发布平台