➢ 精通Objective-C语言、熟悉Swift、Java、Flutter、React Native
➢ 掌握OC的runtime的运行机制以及相关的底层原理
➢ 熟练Flutter 跨平台、高性能的移动开发框架,了解widget开发机制,混合开发
➢ 掌握 Socket 通信、TCP/UDP和HTTP/HTTPS等协议
➢ 熟悉RxSwift函数响应式编程原理,构建过项目响应式组件,对网络、UI常规逻辑设计独立的组件
➢ 熟悉MVP面向协议编程架构设计,通过适配器原则、中间者模式等设计模式优化项目
➢ 掌握RunLoop、消息机制,熟练Instruments、Analyze以及一些常用三方性能检测工具
➢ 熟悉NSThread、GCD、NSOperation多线程开发,对线程安全、GCD底层原理有深入掌握
➢ 熟悉OpenGL ES渲染技巧(背面删除、深度测试、多边形偏移等)
➢ 熟悉利用OpenGL ES着色语言GLSL,编写shader以及实现视频渲染、图片滤镜
➢ 掌握加密解密、数字签名、证书、iOS签名机制,熟悉响应式、函数式、链式编程思想
➢ 熟悉iOS底层原理、系统原理(Mach-O、dyld)、动态调试(debugserver、lldb、ASLR)等
➢ 掌握iOS逆向工程开发,熟悉APP逆向静态分析、动态调试、Cydia插件开发、hook、加壳脱壳等
➢ 掌握逆向APP进行代码调试debugserver、LLDB、动态库注入、重签名打包ipa等
➢ 熟悉逆向开发CydiaSubstrate框架、Cycript、Theos、Hopper、Reveal、class_dump、ida等逆向工具
➢ 熟悉音视频相关技术,FFmpeg解码H.264、OpenGL ES渲染YUV图像、 PCM转AAC、 OpenAL 播放音频等
➢ 熟悉直播相关技术,流媒体服务器nginx+rtmp、音视频采集AVFoundation、滤镜美颜GPUImage、音视频编解 码VideoToolbox/AudioToolbox、LFLiveKit/FFmpeg推流、拉流播放ijkplayer、聊天WebSocket等
➢ 熟悉组件化开发、远程私有库化,能够通过路由设计、依赖注入、CocoaPods组件解耦通讯
➢ 熟悉IM即时通信技术、KVO相关底层原理、MVC、MVVM等设计模式
➢ 熟练Realm、SQLite、CoreData等数据持久化技术 ,对WCDB事务机制以及数据库迁移有一定了解
➢ 熟悉相关热门框架的封装以及原理:SDWebImage缓存机制、YYCache缓存机制、YYImage图片原理等
➢ 熟练掌握项目的安全防护(ptrace反调试、sysctl防护)
➢ 熟悉shell脚本、fastlane以及Jenkins等方式对项目持续集成和自动打包分发
➢ 熟悉性能优化、内存管理、卡顿检测、启动优化、电量优化、网络优化、安装包瘦身等
➢ 熟悉常用算法,排序、递归、回溯、分治、动态规划、DFS等,了解并查集、图的应用等
➢ 熟悉常用数据结构,二叉树、哈希表、链表、栈、队列、动态数组等
➢ 具备一定的设计与架构能力,并能够结合项目定制化敏捷开发
➢ 具备快速源码阅读、分析能力,平时参与GitHub以及一些论坛社区交流