一.单利的优缺点,
http://blog.sina.com.cn/s/blog_7e8945a00101a2h9.html
1.主要优点
单例模式的主要优点如下:
(1)单例模式提供了对唯一实例的受控访问。因为单例类封装了它的唯一实例,所以它可以严格控制客户怎样以及何时访问它。
(2)由于在系统内存中只存在一个对象,因此可以节约系统资源,对于一些需要频繁创建和销毁的对象单例模式无疑可以提高系统的性能。
(3)允许可变数目的实例。基于单例模式我们可以进行扩展,使用与单例控制相似的方法来获得指定个数的对象实例,既节省系统资源,又解决了单例单例对象共享过多有损性能的问题。
2.主要缺点
单例模式的主要缺点如下:
(1)由于单例模式中没有抽象层,因此单例类的扩展有很大的困难。
(2)单例类的职责过重,在一定程度上违背了“单一职责原则”。因为单例类既充当了工厂角色,提供了工厂方法,同时又充当了产品角色,包含一些业务方法,将产品的创建和产品的本身的功能融合到一起。
(3)现在很多面向对象语言(如Java、C#)的运行环境都提供了自动垃圾回收的技术,因此,如果实例化的共享对象长时间不被利用,系统会认为它是垃圾,会自动销毁并回收资源,下次利用时又将重新实例化,这将导致共享的单例对象状态的丢失。
二.通知使用过多会造成什么影响
在iOS应用开发中有一个”Notification Center“的概念。它是一个单例对象,允许当事件发生时通知一些对象。它允许我们在低程度耦合的情况下,满足控制器与一个任意的对象进行通信的目的。这种模式的基本特征是为了让其他的对象能够接收到在该controller中发生某种事件而产生的消息,controller用一个key(通知名称)。这样对于controller来说是匿名的,其他的使用同样的key来注册了该通知的对象(即观察者)能够对通知的事件作出反应。
通知优势:
1.不需要编写多少代码,实现比较简单;
2.对于一个发出的通知,多个对象能够做出反应,即1对多的方式实现简单
3.controller能够传递context对象(dictionary),context对象携带了关于发送通知的自定义的信息
缺点:
1.在编译期不会检查通知是否能够被观察者正确的处理;
2.在释放注册的对象时,需要在通知中心取消注册;
3.在调试的时候应用的工作以及控制过程难跟踪;
4.需要第三方对喜爱那个来管理controller与观察者对象之间的联系;
5.controller和观察者需要提前知道通知名称、UserInfo dictionary keys。如果这些没有在工作区间定义,那么会出现不同步的情况;
6.通知发出后,controller不能从观察者获得任何的反馈信息
三.如何控制重复点击
https://www.jianshu.com/p/c2243ac4f620
四.MVP,MVVM,MVC
五.对称加密,非对称加密,
https://blog.csdn.net/u012094456/article/details/102957283
六.应用中印象最深的有那些。
七.iOS atomic 和 nonatomic 的区别
https://www.jianshu.com/p/66b77270e363
八.Https
https://blog.csdn.net/u012094456/article/details/102957283
九.内存优化
十.NSOperation
https://www.bilibili.com/video/BV18E41187ir?spm_id_from=333.337.search-card.all.click
十一.响应链
十二.xml和json解析
https://www.jianshu.com/p/fc9c42e20e55
十三.struct和class
十四.swift为什么比oc好
十五.hittest
十六.oc怎样调swift,swift怎样调oc的单利类
十七.加载大量的图片高清图片怎么处理,先压缩再显示。
网友评论