03 2022 档案
摘要:通过前面的学习,相信你对I/O相关的基础知识有了一些认识,也了解了测量I/O性能的方法。 但是在实际应用中,你知道有哪些I/O操作是不合理的吗?我们应该如何发现代码中不合理的I/O操作呢?或者更进一步,我们能否在线上持续监控应用程序中I/O的使用呢?今天我们就一起来看看这些问题如何解决。 I/O跟踪
阅读全文
摘要:I/O是一个非常大的话题,很难一次性将每个细节都讲清楚。对于服务器开发者来说,可以根据需要选择合适的文件系统和磁盘类型,也可以根据需要调整内核参数。但对于移动开发者来说,我们看起来好像做不了什么I/O方面的优化? 事实上并不是这样的,启动优化中“数据重排”就是一个例子。如果我们非常清楚文件系统和磁盘
阅读全文
摘要:250GB容量,512MB DDR4缓存,连续读取不超过550MB/s,连续写入不超过520MB/s。 “双十一”在天猫看到一款固态硬盘有上面的这些介绍,这些数字分别代表了什么意思? 在专栏前面卡顿和启动优化里,我也经常提到I/O优化。可能很多同学觉得I/O优化不就是不在主线程读写大文件吗,真的只有
阅读全文
摘要:适配器模式是一种结构型模式: ● 可实现一个适配器类作为两个不兼容接口之间的桥梁, ● 然后将一个接口适配成使用者所预期的另一个接口。 适配器模式的使用场景有: ● 系统需要使用现有的类,但此类的接口不符合系统的需要,即接口不兼容。 ● 想要建立一个可以重复使用的类,使其与一些彼此之间没有太大关联的
阅读全文
摘要:MVP,面向协议的设计模式 简介 从上图看出,在MVC基础上,又抽象出了P层,即Presenter层。 ● MVP的V层是由UIViewController和UIView共同组成的。 ● View将委托Presenter对自己进行操作(Presenter发命令控制View的交互,隐藏orshow之类
阅读全文
摘要:简介 iOS开发中,MVC是构建iOS App标准模式,苹果推荐的一个用来组织代码的权威范式。现在,MVC仍然是主流客户端变成框架,但同时也被调侃成Massive View Controller(重量级视图控制器),有以下几个问题: ● 厚重的ViewController ● 遗失的网络逻辑(无立足
阅读全文