本文仅阐述iOS开发下的对应解决方案 或许你会遇到以下的问题 : 使用了第三方库,或许量少,但是随着迭代,需求的增加,依赖的第三方会越来越多 第三方库多起来,导致整个项目占用...
本文仅阐述iOS开发下的对应解决方案 或许你会遇到以下的问题 : 使用了第三方库,或许量少,但是随着迭代,需求的增加,依赖的第三方会越来越多 第三方库多起来,导致整个项目占用...
Runtime的特性主要是消息(方法)传递,如果消息(方法)在对象中找不到,就进行转发,具体怎么实现的呢。我们从下面几个方面探寻Runtime的实现机制。 Runtime介绍...
前言 随着公司业务的不断增加,功能的快速迭代,app的业务线越来越多,代码体积变得越来越庞大。同时,项目投入的开发者也越来越多,不同的开发者的code风格千差万别。加之公司开...
一.简介 RunLoop是iOS中的Event Loop实现,简单来说是一个do while循环,需要GCD等协作执行;循环体内没事件需要处理就休眠,被mach_port唤醒...
private是完全私有的,只有在类自己里面可以调用,在类的外部和子类都不能调用,子类也不能继承父类的private的属性和方法。 protected虽然可以被外界看到,但外...
iOS6 之前:viewDidUnload 和 didReceiveMemoryWarning 都会被调用。iOS6 及其后面的版本: viewDidUnload 不会被调用...
1、前言 我们先来看一下这几个概念的类继承关系图: iOS 中,所有显示在界面上的对象都是从 UIResponder 直接或间接继承的。 2、应用程序(UIApplicati...
基本简介 ARC是Automatic Reference Counting(自动引用计数器)的简称。 ARC是ios5.0引入的新特性,完全消除手动管理内存的繁琐,编译器会自...
我们在声明一个NSString属性时,对于其内存相关特性,通常有两种选择(基于ARC环境):strong与copy。那这两者有什么区别呢? 当源字符串是NSString时,由...
一.事件传递链 当点击一个按钮的时候,事件如果传递到按钮这个第一响应者上,这就是事件传递链要做的事情。系统根据下面两个方法来传递事件。 当点击按钮的时候,其实事件是这样传递的...
首先这里的持久化指的是数据持久化,目前客户端的持久化也只有这一个含义。 为何要持久化: iOS开发可以没有持久化,持久化更多的是业务需求;比如记录用户是否登陆,下次进应用不需...
单一职责原则,开闭原则,依赖倒置原则(面向接口编程),里氏替换原则,接口隔离原则。 面相对象设计的概念大家也都知道,它的设计目标就是希望软件系统能做到以下几点: 可扩展:新特...
安全区域的理解 SafeArea是View的属性,是iOS11出来用来代替bottomLayoutGuide/topLayoutGuide的,bottomLayoutGuid...
一.mrc下使用arc 1.自己的旧项目没有使用ARC,但是引入的第三方库却是使用了ARC的。给采用了ARC的源文件,添加 -fobjc-arc 选项 二.arc下使用mrc...
SDWebImage底层实现原理: 其实是有沙盒缓存机制,主要由三块组成 1.内存图⽚缓存2.内存操作缓存3.磁盘沙盒缓存 1.UIImageView+WebCache: 2...
进程: 一个程序对一个数据集的动态执行过程,是分配资源的基本单位。 线程: 一个进程内CPU独立运行和调度的基本单位。 一个程序至少有一个进程,进程是必要的一个单位,线程是执...
有容错值用gcd timer实现,反之用mk_timer实现,mk_timer更准确;触发点并不是一开始就计算出的,而是每次触发后动态计算;当RunLoop执行一个阻塞操作时...