/DoNote

全栈学习之路,自救之路。

DoNote

持续更新中!!!

  • 前言: 从事iOS开发几年了,一直在业务需求及不同的项目中转动,对于基础知识及一些底层的知识一直不求甚解,期间也多次因为生活中的一地鸡毛,而处于一种惫懒,拖延的恶性循环中,这对于“出身”并不是特别好的开发而言是灾难性的,若是仍不求自救,可能一辈子就这样了。

  • 行动: 在这里从全局的角度将iOS的开发舆图整理出来,然后逐渐补全学习或者整理笔记,不限于iOS,另根据知识整理面试题集,知其然,知其所以然,还得能条理的表达出来。以上作为自己自救的一个方式吧!知行合一,真正做到很难,0到1的过程,就从这第一步开始吧!

一、思维脉络

1. C

  • C - c的一些基础

2. Objc

以下仅从宏观上列出主干,详情的objc脉络,请查看Objc目录

3. Swift

4. 跨平台

技术类型 UI渲染方式 开发效率 动态化 性能 框架代表
H5+原生 WebView渲染 一般 支持 Cordova、Ionic
JavaScript+原生渲染 原生控件渲染 支持 RN、Weex
自绘UI+原生 调用系统API渲染 Flutter高, QT低 默认不支持 QT、Flutter

上表为跨平台技术对比,其中开发语言主要指UI的开发语言。而开发效率,是指整个开发周期的效率,包括编码时间、调试时间、以及排错、兼容时间。动态化主要指是否支持动态下发代码和是否支持热更新。值得注意的是Flutter的Release包默认是使用Dart AOT模式编译的,所以不支持动态化,但Dart还有JIT或snapshot运行方式,这些模式都是支持动态化的。

5. 前端

  • H5
  • Vue
  • Angular
  • React

6. Python

7. Harmony

8. Android

暂时不考虑Fuchsia(Google新的自研操作系统)

二、面试集

  1. BAT面试题合集
  2. iOS面试题大全--(附答案)
  3. iOSInterviewsAndDevNotes
  4. 全新角度剖析--iOS面试
  5. 2020-iOS面试题集合
  6. iOS 面试宝典 没有比这更全的了(持续更新)

三、iOS舆图

iOS学习笔记通过wiki查看: https://github.com/deepindo/DoNote/wiki

iOS基础

布局

  1. Autolayout
  2. Snapkit
  3. Masonry
  4. Simplex算法
  5. Flexbox
  6. AsyncDisplayKit

列表

  1. UITableView
  2. UICollectionView
  3. ExpandableCell
  4. Header
  5. Placeholder
  6. CollectionViewLayout
  7. IGListKit

图表

  1. Charts

图形

  1. CoreGraphics
  2. Git
  3. 图片
  4. 图片处理
  5. PDF

多媒休

  1. 视频
  2. 音频
  3. 游戏
  4. ARKit
  5. CoreGraphics
  6. CoreImage
  7. Metal
  8. GPUImage
  9. SceneKit
  10. Image I/O
  11. SiriKit

AppService

  1. 硬件
  2. 定位(CoreLoation)
  3. 通知
  4. WebView
  5. WebScoket
  6. iCloud
  7. WatchKit
  8. 照片
  9. 相机
  10. 文件管理
  11. 手势
  12. 键盘
  13. 蓝牙
  14. NFC
  15. ForceTouch
  16. iBeacon
  17. 地图
  18. AppleTV
  19. Email
  20. PassBook
  21. 支付
  22. 权限
  23. CoreMotion

iOS系统

Foundation

界面

  1. UIViewController
  2. UINavigationController
  3. ScrollView
  4. 按钮
  5. Label
  6. 表单
  7. 登录
  8. 菜单
  9. Navigation Bar
  10. Popup
  11. 进度条
  12. 下拉刷新
  13. SegmentedControl
  14. Slider
  15. SplashView
  16. StatusBar
  17. Stepper
  18. Switch
  19. TabBar
  20. PickerView
  21. 日历
  22. 卡片
  23. 自定义控件
  24. 浮层
  25. 弹窗
  26. 标签
  27. 通知中心
  28. Text
  29. TextKit
  30. UIPageControl
  31. CoreText
  32. 字体
  33. 多窗口
  34. 向导

四、外链

ObjC **: https://objccn.io/
Swift.org: https://swift.org/
戴铭: https://github.com/ming1016/study/wiki - (iOS 开发舆图)
王巍: https://onevcat.com/
唐巧: http://blog.devtang.com/
casa: https://casatwy.com/
周小鱼: http://zhoulingyu.com/

五、欢迎提交 PR / issue

  • 收集整理不易,且赞且珍惜!如果你觉得此仓库对你有价值,欢迎 star/fork,蟹蟹🤝。
  • Email: deepindo@foxmail.com, 有需要请联系