【iOS】TableView的优化
一、优化的本质 UITableView 的优化本质在于提高滚动性能和减少内存使用,以保证流畅的用户体验,从计算机层面来讲,其核心本质为降低 CPU和GPU 的工作来提升性能 CPU:对象的创建和销毁、对象属性的调整、布局计算、文本的计算和排版、图片的格式转换和解码、图像的绘制 G
2383 字
|
12 分钟
【iOS】多线程与GCD
线程与进程 线程和进程的定义 线程 线程是进程的基本执行单元,一个进程的所有任务都在线程中执行 进程要想执行任务,必须要有线程,进程至少要有一条线程 程序启动时会默认开启一条线程,这条线程被称为主线程或UI线程 进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,
11605 字
|
58 分钟
【iOS】KVO
In order to understand key value observing, you must first understand key value coding. KVC是键值编码 ,在对象创建完成后,可以 动态的给对象属性赋值 ,而 KVO是键值观察 ,提供了一种监
2829 字
|
14 分钟
【iOS】内存五大分区
栈区 定义 栈是一种数据结构,其对应的 进程或线程是唯一的 栈是一种 向低地址拓展 的数据结构 栈是一块 连续的内存 , 遵循先进后出原则 栈道地址空间在iOS中 以0X7 开头 栈区一般在运行时分配 存储 栈区是由 编译器自动分配并释放 的,主要用来存储 局部变量 函数的参数,
1420 字
|
7 分钟
【iOS】alloc、init、new
1. alloc 进入到alloc的源码里面,我们发现alloc调用了 objc rootAlloc方法,而 objc rootAlloc调用了callAlloc方法。 具体内容本人暂时也一知半解,贴一张图 alloc为我们创建了1个对象并申请了一块不小于16字节的内存空间 具体
1066 字
|
5 分钟
【iOS】KVC总结
什么是KVC KVC 的全称是Key Value Coding(键值编码),是由NSKeyValueCoding非正式协议启用的一种机制,对象采用这种机制来提供对其属性的间接访问,可以通过字符串来访问一个对象的成员变量或其关联的存取方法(getter or setter)。 通常
5043 字
|
25 分钟
【iOS】内存管理初级
​ 内存管理是程序在运行时分配内存、使用内存,并在程序完成时释放内存的过程。在Objective C中,也被看作是在众多数据和代码之间分配有限内存资源的所有权(Ownership)的一种方式。 内存管理关心的是清理或回收不用的内存,以便内存能够再次利用。 如果一个对象不再使用,就
4218 字
|
21 分钟
【iOS】仿写 —— 计算器
在计算器的仿写中,本人首次实际使用MVC构架和Mansory自动布局。 安装Mansory 首先安装cocoapods,然后在终端找到项目文件夹,执行 pod init 随后修改文件,将内容改为: platform :ios, '12.0' target '计算器77' do p
340 字
|
2 分钟