iOS开发高手课,从原理到实战,带你解决80%的开发难题

你将获得什么?

  • 构建 iOS 高手完整知识脉络;
  • 30+ iOS 开发实战场景剖析;
  • iOS 核心技术与原理详解;
  • 精美手绘图解知识点。

课程介绍

从 2008 年 App Store 正式对外开放到现在,iOS 开发已经走过了十多年时间。这些年里,移动圈子里相继诞生了组件化、热修复、动态化、大前端、Flutter、小程序等热门技术,给人一种“乱花渐欲迷人眼”的感觉。

但是从本质来看,它们背后都是一些通用的底层技术和创新的设计思想。比如,热修复、动态化和大前端的底层技术,都是 JavaScriptCore 这样的 JavaScript 虚拟机技术;再比如,大前端和 Flutter 的渲染,使用的都是 WebCore 中 Skia 这样的渲染引擎。

本课程就是希望能够带你看懂这些纷繁复杂的技术名词背后的技术本质。

在这个课程里,戴铭将会结合自己的成长经历,为你梳理出 iOS 开发的核心且重要的知识,以遇到问题解决问题的方式带你深度理解这些知识,紧接着通过底层原理的讲解,帮助你能够主动出击,建立从源头消灭问题的能力,最终引导你将各类知识贯穿起来,进而形成一套核心且有深度的知识体系,彻底搞懂 iOS 开发的方方面面。

同时,为了帮助你理解这些知识,戴铭加入了非常多的精致且优美的手绘图,希望可以带给你一次愉悦的学习体验。

本专栏包括 4 大模块。

模块一,基础篇。围绕 iOS 开发在各个阶段(开发、调试测试、发布和上线)中遇到的问题展开,带你一起剖析问题、解决问题,提升你的编程基本功。

模块二,应用开发。所谓选择大于努力。这个模块,将会和你分享一些经典好用的第三方库,在实战中告诉你应该如何选择,减少重复工作,实现高效开发。同时,通过对这些第三方库背后的原理和实现思路的剖析,让你在遇到千奇百怪的需求时,也能够开发出适合自己需求的库。

模块三,原理篇。讲解一些底层原理,比如系统内核 XNU、AOP、内存管理和编译的知识。这样,你就可以在遇到问题时,不再只是被动地见招拆招,而是能主动出击、化险为夷。

模块四,前端与原生共舞。为你拆解原生与前端中的各种技术细节,以及它们之间的内在联系,帮你站在更高的位置,去判断未来的技术走向和趋势。

课程目录

开篇词 (1讲)
开篇词 | 锚定一个点,然后在这个点上深耕
基础篇 (20讲)
01 | 建立你自己的iOS开发知识体系
02 | App 启动速度怎么做优化与监控?
03 | Auto Layout 是怎么进行自动布局的,性能如何?
04 | 项目大了人员多了,架构怎么设计更合理?
05 | 链接器:符号是怎么绑定到地址上的?
06 | App 如何通过注入动态库的方式实现极速编译调试?
07 | Clang、Infer 和 OCLint ,我们应该使用谁来做静态分析?
08 | 如何利用 Clang 为 App 提质?
09 | 无侵入的埋点方案如何实现?
10 | 包大小:如何从资源和代码层面实现全方位瘦身?
11 | 热点问题答疑(一):基础模块问题答疑
12 | iOS 崩溃千奇百怪,如何全面监控?
13 | 如何利用 RunLoop 原理去监控卡顿?
14 | 临近 OOM,如何获取详细内存分配信息,分析内存问题?
15 | 日志监控:怎样获取 App 中的全量日志?
16 | 性能监控:衡量 App 质量的那把尺
17 | 远超你想象的多线程的那些坑
18 | 怎么减少 App 电量消耗?
19 | 热点问题答疑(二):基础模块问题答疑
20 | iOS开发的最佳学习路径是什么?
应用开发篇 (12讲)
21 | 除了 Cocoa,iOS还可以用哪些 GUI 框架开发?
22 | 细说 iOS 响应式框架变迁,哪些思想可以为我所用?
23 | 如何构造酷炫的物理效果和过场动画效果?
24 | A/B 测试:验证决策效果的利器
25 | 怎样构建底层的发布和订阅事件总线?
26 | 如何提高 JSON 解析的性能?
27 | 如何用 Flexbox 思路开发?跟自动布局比,Flexbox 好在哪?
28 | 怎么应对各种富文本表现需求?
29 | 如何在 iOS 中进行面向测试驱动开发和面向行为驱动开发?
30 | 如何制定一套适合自己团队的 iOS 编码规范?
31 | iOS 开发学习资料和书单推荐
32 | 热点问题答疑(三)
原理篇 (6讲)
33 | iOS 系统内核 XNU:App 如何加载?
34 | iOS 黑魔法 Runtime Method Swizzling 背后的原理
35 | libffi:动态调用和定义 C 函数
36 | iOS 是怎么管理内存的?
37 | 如何编写 Clang 插件?
38 | 热点问题答疑(四)
原生与前端共舞 (5讲)
39 | 打通前端与原生的桥梁:JavaScriptCore 能干哪些事情?
40 | React Native、Flutter 等,这些跨端方案怎么选?
41 | 原生布局转到前端布局,开发思路有哪些转变?
42 | iOS原生、大前端和Flutter分别是怎么渲染的?
43 | 剖析使 App 具有动态化和热更新能力的方案
用户故事 (1讲)
用户故事 | 我是如何学习这个专栏的?
结束语 (2讲)
结束语 | 慢几步,深几度
结课测试 | 这些iOS的开发知识你都掌握了吗?

讲师介绍

戴铭,前滴滴出行技术专家,深度经历了移动开发和后端技术的演进过程,在组件化方案落地、工程动态化、大前端建设、应用开发阶段效率的提升、上线后各种难点问题的解决等方面的经验非常丰富。

发表评论

登录后才能评论