iOS技能树

922 阅读2分钟

前言 技术栈就是在某一个领域(项目或工程)所需要的一堆技能,整理起来的技术链。作为一个程序猿有必要整理一下自己的技能树方便查缺补漏,所以整理了一下这几年做IOS开发接触或使用到的技能树。这份整理的技能树带有很大的个人技能倾向性。

 技术栈 一.语法
1.Objective-C 基础语法 对象模型 动态特效

2.swift 基础语法

3.C语言 基础语法 面向对象 数据结构与算法 常用网络协议

二.UI
1.页面绘制 UIkit Core Animation Core Text

2.动画 Core Graphics Quartz 2D

3.图像处理 openGL ES GLKit SpriteKit SceneKit

4.音频视频 AudioToolbox AVAudioPlayer

 三.网络

1.通讯协议 TCP/UDP Http/Https

 2.断点下载

 3.断点上传

 4.网络异常(弱网)处理 

四.存储 

1.文件系统与沙盒机制 

2.NSUserDefaults存储 

3.文件读写 

4.数据流读写 

5.数据库 五.线程

 1.线程类型 GCD NSHread NSOperationQueue

 2.线程通讯 

3.线程锁 

六.内存 

1.内存管理机制ARC/MRC 

2.内存泄露原理 

3.缓存管理 

七.架构 

1.设计模式 MVC MVVM KVO KVC 

2.路由 

3.Native与Web混合开发架构 JSBridge UIWebView/WKWebView 

八.系统

 1.RunLoop 

2.RunTime 

九.安全 

1.应用安全防护 加固 完整性校验 签名校验 放动态调试 越狱检测 越狱 

2.沙盒

 3.网络安全 通讯加密 https ssl证书校验 十.数据加解密 

1.对称加密

 2.非对称加密

 3.报文加解密优化 

十一.代码管理 

1.SVN 

1.git 

十二.证书与发布管理 

1.签名原理 2.证书签发流程 

3.上架流程 4.审核问题处理 

十三.开发工具 

1.快捷键 2.插件 3.调试与性能测试工具

 总结 以上技术栈是根据个人开发经验所整理的,也是对自己IOS技能的一个总结。

可获取一份iOS资料大全