共计 2882 个字符,预计需要花费 8 分钟才能阅读完成。
大家好,这里是 Bo2SS,上次提到了利用开发篇还差一份材料举荐的 加餐,这不马上加上~
互联网时代,学习材料基本上是包罗万象、目不暇接了,但对于学习者来说,抉择适宜本人的优质学习材料曾经成为一大难题。
如果可能疾速找到 通过测验的、适宜本人的 学习材料,不仅能够晋升咱们的学习效率,还能帮忙咱们疾速解决现阶段遇到的问题。
所以,这份加餐次要是整顿了作者举荐的一些 在线资源 和相干书籍,开发者们赶快珍藏起来吧!
「关键字」Open Source、出名公众号、Apple 官网资源、修炼内功
在线资源
零碎学习
Open-Source iOS Apps:收录了很多优良的、残缺的开源 App,分类粗疏,并专门标记了 上架 App Store 的 App,适宜通过残缺的例子学习 App 开发。
Awesome iOS:
- 家喻户晓的 Awesome 系列,但但凡有肯定知名度的畛域,都有本人的 Awesome xxx 我的项目。
- 它最大的特点就是大而全,囊括了从 开发、调试到公布 的各种学习材料,也蕴含了 博客、书籍、教程、播客和邮件订阅 等举荐。
- 同时,还有更细分的 Awesome 子系列举荐,比方 Awesome ARKit、Awesome iOS Interview(一款收集了常见面试问题的 App,上架了 App Store,亲测应用须要借助梯子🪜)。
- 最初作者倡议,当你遇到任何 iOS 的问题时,都 应该先到这个网站看看。
查漏补缺
界面交互:
- Cocoa Controls 和 iOS Examples (Swift)”):收集了大量开源库,分类粗疏,非常适合找“轮子”或学习实现思维。
冷知识点:
- NSHipster:由 AFNetworking 和 Alamofire 的作者 Mattt 保护的网站,次要关注一些不罕用的 iOS 知识点。
开发者 / 团队:
- Swift 出名开发者:理解走在 iOS 畛域前沿开发者的视线和 iOS 最新的动向。
- Swift 开源我的项目团队:如果你正在应用他们的开源我的项目,通过关注他们的动向,能够随时理解这些开源我的项目的最新进展。
- PS:iOS 出名开发者根本都偏差 Swift 了。
我关注的一些公众号:
- 老司机技术周报(定期周报)、iOS 成长之路(定期周报)、starming(作者自己)、SwiftGG 翻译组(关注 Apple 生态)、Bo2SS(与你一起成长👀)。
- 「公众号里附上链接」
其它:
- iOS 开发者值得关注的网站举荐:从社区到周报到博客到工具等的精心举荐。
官网资源
💡 当然还少不了对 Apple 官网资源 的关注:
WWDC:苹果每年举办的寰球开发者大会,可应用 WWDC App for macOS 晋升观看体验。
- WWDC NOTES:收集了 WWDC 视频对应的优质笔记,相比观看视频,可用来疾速回顾,甚至节省时间。
- WWDC Community:跟踪近期各种 WWDC 流动、新闻和教程。
- Human Interface Guidelines(人机交互指南)
- API 帮忙文档
相干书籍
如果你想要透彻地把握某畛域的专业知识,还是须要静下心,通过浏览相干书籍来缓缓学习。
Objective-C
《Objective-C 编程》、《iOS 编程》:
- The Big Nerd Ranch 出品,均属于不错的 入门书。
- 目前本人就在过一遍,有机会整顿出一些笔记。
《Objective-C 高级编程》:
- 围绕 OC 中 3 个外围知识点开展:内存治理、Block、GCD(Grand Central Dispatch)。
- 基于苹果公开的源码,解说透彻。
《Effective Objective-C 2.0》:
- 家喻户晓的 Effective 系列,但但凡有肯定知名度的语言,都有……
- 从语法、接口与 api 设计、内存治理、框架等 7 大方面总结和探讨了 OC 编程中 52 个鲜为人知和容易被忽视的个性与陷阱,属于 进阶读物。
Swift
Raywenderlich > Books 平台:
- 一步一步教你把握一些开发常识,内容十分实用,品质十分不错。
- 涉及面很广,比方 ARKit、数据结构和算法的 Swift 版、设计模式、Core Data、iOS 动画、Apple 调试和逆向工程、RxSwift、Realm 和游戏开发等等。
- 此外,该网站还蕴含学习门路、视频和文章等其它优质内容。
objc.io 平台:
- 从原理和源代码实现的角度来解说知识点。
- 内容比 Raywenderlich 出版的图书更深刻,适宜 有肯定 iOS 开发教训 的人浏览。
不变的通用常识
《程序员的自我涵养 – 链接、装载与库》:
- 具体且深刻地解说了 硬件、操作系统、线程 的常识,帮你从代码编译、链接到运行时内存虚拟空间和物理空间映射的角度,理解一个程序从编写到运行时的底层常识的方方面面,有助于你了解 零碎工作原理。
- 浏览本书之前,你须要先把握 CPU、计算机原理、汇编、编译原理、C 语言、C++ 语言等计算机学科的基本知识。
《架构整洁之道》:
- 发明“Clean 神话”的 Bob 大叔在架构畛域的登峰之作,外面 架构设计的思维永远不会过期,并实用于所有的常识畛域。
- 详细分析了架构的指标价值、编程范式、架构设计准则、组件拆分和边界解决,并通过实际案例把所讲常识都串了起来,便于读者了解。
- 当你有了大量编程教训,须要思考工程架构合理性的时候,举荐浏览。
💡:很多经典值得你重复浏览,不同阶段浏览也会有不同的领会和播种。
小结:有些常识是不会变的,只有抓住这些常识,不论下层如何变动,你都能抓住外围,把握技术的走向,也就不会感到常识焦虑。
其它:热点问题答疑(三)
什么是 WatchDog 机制?
- WatchDog 机制是苹果公司设计的,一种为了防止 App 界面无响应造成用户无奈操作,而强杀掉 App 过程的机制。
- 造成 App 界面无响应的起因品种太多,于是苹果公司采纳了 一刀切 的做法:但凡主线程卡死肯定的工夫就会被 WatchDog 机制强杀掉(这个卡死工夫,WatchDog 在 App 启动时设置的是 20 秒,前台时设置的是 10 秒,后盾时设置的是 10 分钟)。
- 因为 WatchDog 强杀日志属于系统日志,所以你的 App 上线后须要本人来监控卡顿,这样才可能在 WatchDog 强杀之前捕捉到 App 卡死的状况,可参考苹果公司对于解体剖析的文档:Diagnosing Issues Using Crash Reports and Device Logs。
<br/>
对于第三方库的应用,作者倡议:
- 如果 和业务强相干,比方埋点或者 A/B 测试这样的库,最好是自建,而后能够借鉴开源库的思路;
- 对于一些 通用性强 的根底库,比方网络库和继续化存储的库,能够间接应用成熟的第三方库,既能够节俭开发和保护老本,又可能进步产品质量;
- ➕还有种状况就是,对于 较小的、只有几个 iOS 开发人员的团队来说,还是尽可能应用开源我的项目,能够优先去 Awesome iOS(前文提到过)上找适宜团队的我的项目。
PS:有评论举荐 Firebase 的 A/B Testing SDK,它整合了数据上报、数据分析、PUSH 音讯和 AI 预测等 Firebase 的其余性能,这样大大降低了数据分析的老本。
好啦,利用开发篇到此结束!下次就要真正开始 原理篇 的内容了。
如果你还有一些十分不错的学习材料,欢送在下方给 Bo2SS 留言举荐,也欢送转发本文给有须要的敌人~
咱们下次见!
本文由 mdnice 多平台公布