随笔分类 - iOS开发
摘要:我觉得可以按照这样一条路线学习和梳理Runloop的知识: Runloop <-- 多线程并发 <-- block <-- 内存管理 <-- 指针、引用计数、深浅拷贝 理由: Runloop是基于线程的,Runloop是一种循环机制,但是又不同于while这类循环的同步机制,Runloop可以让线程
阅读全文
posted @ 2021-08-09 10:14
码出境界
摘要:关于异常处理的使用的格式基本就是: @try { } @catch (NSException *exception) { } @finally { } 通过这段时间对异常处理相关知识的整理,我觉得需要掌握以下几个方面的内容: 1 要会创建NSException对象,并且会使用@throw抛出异常 2
阅读全文
posted @ 2021-08-09 00:05
码出境界
摘要:源代码: - (void)test { NSString *name = @"111"; NSLog(@">>>>>>>>>name:%@", name); [self changeValue1:name]; NSLog(@">>>>>>>>>name:%@", name); [self chang
阅读全文
posted @ 2021-08-05 15:26
码出境界
摘要:学会2个方面的内容,基本就可以上手NSError: 1、NSError对象的创建和解读 2、NSError对象的传递方式,通过委托方法回调方式、通过以NSerror对象指针的指针作为参数的方式 一、NSError的创建和解读 - (void)test { // 代码一 NSString *desc1
阅读全文
posted @ 2021-08-05 14:50
码出境界
摘要:重新定义NSLog: NSLog(@"【打印定位:%s:%d】%@", __FILE__, __LINE__, <#message#>); 简化打印的内容: Edit Scheme -> Run -> Arguments -> Environment Variables -> Add(OS_ACTI
阅读全文
posted @ 2021-08-05 14:25
码出境界
摘要:Foundation框架提供了两个记录日志函数,NSLog和NSLogv,使用它们可以将输出结果记录到系统日志设备中。 NSLog函数使用很多,本文主要介绍下NSLogv的使用。 与NSLog函数类似,NSLogv也会将错误消息记录到系统日志设备中,它与NSLog函数的区别是它支持变量参数列表。 比
阅读全文
posted @ 2021-08-04 10:50
码出境界
摘要:简介: 一个为UIImageView提供一个分类来支持远程服务器图片加载的第三方库。 功能简介: 1、一个添加了web图片加载和缓存管理的UIImageView分类 2、一个异步图片下载器 3、一个异步的内存加磁盘综合存储图片并且自动处理过期图片 4、支持动态gif图 5、支持webP格式的图片 6
阅读全文
posted @ 2021-07-06 17:42
码出境界
摘要:使用keychain来存储,也就是钥匙串,使用keychain需要导入Security框架 iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书等)的方式,每个iOS程序都有一个独立的keychain存储。相对于 NSUserDefaults、文件保存等一般方式,keycha
阅读全文
posted @ 2021-07-06 15:21
码出境界
摘要:App的包大小可以从多个方面进行优化: 一、资源优化 1、删除无用图片 1)例如使用 LSUnusedResource 第三方库查找无用图片。注意,如果使用 [UIImage imageNamed:[NSString stringWithFormat:"icon_%d.png", index]];
阅读全文
posted @ 2021-07-06 15:10
码出境界
摘要:首先,需要清楚App的启动过程 1、解析 Info.plist ·加载相关信息,例如闪屏 ·沙箱建立、权限检查 2、Mach-O加载 ·如果是胖二进制文件,寻找适合当前CPU类别的部分 ·加载所有依赖的Mach-O文件(递归调用Mach-O加载的方法) ·定位内部、外部指针引用,例如字符串、函数等
阅读全文
posted @ 2021-07-05 17:11
码出境界
摘要:1、GCD和核心是C语言写的系统服务,执行和操作简单高效,因此NSOperation底层也通过GCD实现,换个说法就是NSOperation是对GCD更高层次的抽象,这是它们之间最本质的区别。因此如果希望自定义任务,建议使用NSOperation; 2、依赖关系,NSOperation可以设置两个N
阅读全文
posted @ 2021-07-05 16:53
码出境界
摘要:以前学习化学知识的时候,有一句经典的话就是:“结构决定性质”。 这句话在软件开发中依然适用,不管是日常的业务开发工作,还是想探索下OC的底层原理,都离不开结构的限制。 本文是记录OC对象模型的结构设计。 ==第一部分== OC是一门面向对象的编程语言,每一个对象都是一个类的实例。在OC语言的内部,每
阅读全文
posted @ 2021-06-21 00:39
码出境界
摘要:一、Runtime简介 Runtime其实就是一套API,是一套由C、C++、汇编语言一起写成的API,给OC提供运行时。 Runtime是OC的底层,采用的是C、C++、汇编语言为OC语言提供运行时环境的支持。 Runtime System Library是用C、C++、汇编语言写的一个代码库,通
阅读全文
posted @ 2021-06-14 12:24
码出境界
摘要:我觉得学习iOS开发,首先对OC类和OC对象的学习,把里面的内容理清楚,至少理论知识的逻辑先理清楚,是很有必要的。 但是通过我写这篇博文的经验来看,这里面涉及到的知识点有相互有所交叉,很难理清一条顺序链,然后知识一环扣一环,做不到,唯一的办法可能就是需要看完之后再看第二遍,然后敲代码做实验。 类是面
阅读全文
posted @ 2021-06-14 10:31
码出境界

浙公网安备 33010602011771号