查看原文
其他

iOS开发有哪些方向可以探索(第二篇)

everettjf 架构技术评论 2022-09-08

这篇文章是 《为什么最近iOS开发岗位那么多(第一篇)》的第二篇,标题不一样哈。这篇文章列举一下作为iOS开发者,有哪些方向可以去探索、学习和应用。

首先声明下,这篇文章肯定整理的不完整。

界面逻辑

  • 最基础的界面开发,各种UI组件的使用。如何实现微信的主要界面,实现微博的主要界面。
  • UITableView的使用、UICollectionView的使用。IGListKit的使用,ComponentKit的使用和原理。
  • 异步UI渲染。Texture、YYLabel的原理。
  • 动态化:如何实现微博的feed流,如何实现美团首页的feed流。这些feed流通常是一个一个卡片组成,卡片是通过json等格式数据动态生成的界面。动态化如何结合异步UI渲染,提升加载性能等。
  • SwiftUI开发界面。跨苹果平台的界面开发。如何与UIKit和AppKit交互。
  • 多线程开发

动画

  • 基础的动画实现。
  • CoreAnimation的使用。
  • 转场动画,常用哪些,有什么坑。这里写不好,会造成比较奇怪的crash等。
  • SwiftUI的动画。

架构

  • 组件化
  • 具体业务场景的架构
  • CocoaPods的使用和原理
  • 动态库的使用
  • DI框架

音视频

  • 音视频开发
  • AVFoundation
  • opengl/metal

偏底层

  • 书 http://newosxbook.com/index.php 的 Volume I
  • OC Runtime:如何调试oc runtime
  • Swizzle、Aspect
  • fishhook
  • libffi
  • JSPatch原理,WasmPatch原理
  • Swift与Runtime相关的部分
  • dyld
  • MachO
  • 代码覆盖率
  • MainThreadChecker的实现
  • 调试:lldb

性能和稳定性

  • 启动耗时:如何监控,如何优化。网上有大量的文章。
  • 卡顿:如何监控,如何优化。
  • FPS:如何监控,如何优化。
  • 存储:如何监控,如何优化。
  • 磁盘:如何监控,如何优化。
  • 耗电:如何监控,如何优化。
  • GPU:如何监控,如何优化。
  • Crash:Crash原理,学习KSCrash源码。
  • WatchDog:如何监控,如何优化。
  • OOM(Abort):如何监控。如何优化。
  • Instruments工具使用:TimeProfiler的使用,Allocations等工具的使用。

逆向工程

  • 基础的逆向流程熟悉。
  • 怎么砸壳,砸壳原理。frida-ios-dump的使用,bagbak的使用。
  • 汇编:主要是arm64
  • 工具:IDA和Hopper的使用
  • 工具:frida的使用,Grapefruit的使用
  • 工具:Messier的使用。
  • 怎么破解一个iOS/macOS App

编译

  • Xcode编译过程,ipa产生过程
  • MonkeyDev原理
  • clang
  • lldb
  • ld64 链接器理解
  • LLVM 理解
  • LLVM Pass的开发
  • LLVM 插桩
  • LLVM bitcode的理解

DevOps

  • 前端开发:vue和react的基础使用,前端UI库的基础使用
  • ruby/python/node/shell的脚步基础使用
  • 某种faas系统的使用

数据

  • 埋点的完整实现
  • AB测试、AA测试
  • 如何评价性能好坏
  • 最基础的分位数的概念

越狱

  • 如何越狱,书 http://newosxbook.com/index.php 的 Volume III

端智能

  • CoreML
  • MNN
  • TF Lite

通用素质

上文都是各种知识点、或者研究学习方向,但在工作中,仅仅有技术是不够的,还需要一些软技能。后面的文章我们详细聊聊。

其他

等等这次写文章没想到的方向,后续再补充。

如果你有补充,欢迎到群里来指点。

技术社群

由于微信群最多500人的限制,为了让更多人能交流iOS开发技术,并相互提供更多细分的职位信息。我创建了一个“飞书群”,飞书群没有500人上限的限制,而且我平时工作就用,能更多的与大家交流。而且维护了一个「飞书的话题群」,能更方便的积累知识分享。

我之前偶尔会分享的知识星球不会用了,后面会用飞书话题群分享。

大家可以App Store下载“飞书”,并扫码进群。目前群内有400多成员了,大家早早加入,多多分享哈。




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存