- 博客(8)
- 资源 (1)
- 收藏
- 关注
原创 iOS代码规范
代码规范enum 建议使用 NS_ENUM 和 NS_OPTIONS 宏来定义枚举类型使用新版枚举和上面的原因差不多,枚举应该使用新版的写法:typedef NS_ENUM(NSInteger, UIViewAnimationCurve) { UIViewAnimationCurveEaseInOut, UIViewAnimationCurveEaseIn, U...
2018-10-31 15:39:57
146
原创 NSURLSession学习笔记
最近一直在学习AFNetWorking这个框架,我们知道这个框架主要就是封装的的NSURLSession这个类及其相关的类,那么我们要想搞清楚AFNetworking这个框架,首先就要搞清楚NSURLSession这个类相关的类。首先学习一下在NSURLSession之前使用的一个类:NSURLConnection这个类。一.NSURLConnectionNSURLConnection这...
2018-10-31 11:08:11
273
原创 GCD大全
GCD大全GCD 优势:GCD 可用于多核的并行运算GCD 会自动利用更多的 CPU 内核(比如双核、四核)GCD 会自动管理线程的生命周期(创建线程、调度任务、销毁线程)程序员只需要告诉 GCD 想要执行什么任务,不需要编写任何线程管理代码。GCD 相关方法:dispatch_async表示异步:将指定的Block”非同步“加入Dispatch Queue,不做任何等待dispa...
2018-10-30 15:21:34
2758
原创 修饰属性使用Copy与使用Strong的区别?
NSString使用Copy与使用Strong属性的区别?声明一个不可变的字符串对象,不管是Strong还是Copy属性的对象,指向的地址都是同一个原来String指向的地址。如在MRC环境,输出String的引用计数,会看到其引用计数值是3,即Strong操作和Copy操作都会使原字符串对象的引用计数值加1。NSMutableString使用Copy与使用Strong属性的区别?声明一个...
2018-10-30 14:21:30
618
原创 OC-多态
OC里的多态是指不同对象对同一消息的不同响应方式,子类通过重写父类的方法来改变同一消息的实现,体现多态性。OC类只支持单继承,不可以多继承。可以利用protocol代理协议实现多个接口,多个接口方法可以被不同的类实现。通过实现多个接口完成类似C++的多重继承。Category可以在不变动原类的情况下进行方法重写或拓展。另,虚基类是C++语言为了解决多重继承二义性问题的,而OC中只有单继承。...
2018-10-24 10:07:23
252
原创 什么是method swizzling
什么是method swizzling在Objective-C中调用一个方法,其实是向一个对象发送消息,查找消息的唯一依据是selector的名字。利用Objective-C的动态特性,可以实现在运行时偷换selector对应的方法实现,达到给方法挂钩的目的。每个类都有一个方法列表,存放着selector的名字和方法实现的映射关系。IMP有点类似函数指针,指向具体的Method实现。我们可以...
2018-10-23 09:58:42
333
原创 Objective-C runtime机制
Objective-C runtime机制先来看看怎么理解发送消息的含义:曾经觉得Objc特别方便上手,面对着 Cocoa 中大量 API,只知道简单的查文档和调用。还记得初学 Objective-C 时把[receiver message]当成简单的方法调用,而无视了“发送消息”这句话的深刻含义。于是[receiver message]会被编译器转化为:objc_msgSend(recei...
2018-10-23 09:57:03
210
原创 Objective-C语言基础与总结
Objective-C语言基础与总结Objective-C是C语言的一个超集,具有面向对象的特性,并具备了强大的运行时动态语言特性。优点:作为C语言的超级,在C语言的基础上衍生了很多新的语言特征,封装的很完善且使用方便,大大降低了编程复杂度,开发中方便高效。Category(分类)的使用,可以快速扩展类的方法,同时使扩展的功能模块之间互不影响。Posing(扮演)特性,[Parent...
2018-10-22 16:07:14
323
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人