2019-2-11
《iOS开发进阶》



总结写在前面:有些东西过时了,有些东西还是很实用。
个人感觉最后一章的内容讲得少了一些。相比之下可以看看《iOS高级编程》中的相关内容,但是那本书的代码分析也很苦涩。
【前三章 不足之处】
目前的感觉是书中讲解的内容不够详细,很多东西一笔带过了。使用过此类技术的人会觉得有着么样的东西。
但是没使用过的却无法感受到介绍新内容的吸引力在哪里。例如在使用pods时生成后的文件,应该从后缀名为xcworkspace中双击进入项目都没有说明。

Charles
1.过滤网络请求的方法

2.介绍了Charles的很多功能,其中有一部分可用于调试iOS端App网络请求时遇到的各种网络情况,也可以修改服务器返回的参数内容和网络延迟等模拟情况,方便对各种网络情况进行调试。
第四章:界面调试工具Reveal「过了一遍,并未实践」
书中的内容由于历史原因,目前来看过于陈旧了所以忽略。
要学习的时候另外搜索吧。【下面两篇文章感觉不咋滴。。。】
1:可以越狱手机,然后查看任何App的层级 方法:https://www.jianshu.com/p/6cac1052879d
2:不用越狱,进行断点调试:https://www.jianshu.com/p/6cac1052879d
第五章 移动统计工具Flurry「过了一遍 」
最新的可以考虑使用 友盟 来做数据统计
第六章 崩溃日志记录工具 Crashlytics
第七章 略
第八章 Xcode插件
。。。
第十章 理解内存管理
OC和Swift的内存管理方式都是基于引用计数的。
通过使用Xcode工具集中的Leaks检查循环引用

虽然发现了循环引用,但是工具中并没有定位到具体的代码位置。具体方法另查
第十一章 掌握GCD
。
。
。
第15章 基于UIWebView的混合开发
Hybird 就是其中的一种
在UIWebView中,实现OC和JS的交互「包括参数传递」
第十六章 安全性问题
1、网络传输加密【公钥私钥等】
2、防止通讯协议被轻易破解【protobuf等】
3、本地文件和数据的加密
4、代码混淆、核心代码用C语言实现等【C语言实现的底层库可跨平台服用 同时用在Andrpid、iOS、PC端等多个平台】
第17章 基于CoreText 的排版引擎
CoreText处于非常底层的位置,上层的UI控件(UILabel、UITextField、UITextView)和UIWebView都是基于CoreText实现的。
第18章 实战技巧
类方法的block不会产生循环引用 如
[UIView animateWithDuration:1.0 animations:^{
}];]
最长用的快捷键
查看方法列表 Ctrl+6
快速查找文件 Cmd+Shift+O
Isa指针 https://www.jianshu.com/p/9e975a1cab93
第21章block对象模型
Oc中一共有三种类型的block
- _NSConcreateGlobalBlock 全局的静态block,不会访问任何外部变量
- _NSConcreateStackBlock 保存在栈中的block,当函数返回时会被销毁
- _NSConcreateMallocBlock 保存在堆中的block,当引用计数为0时会被销毁
网友评论