在iOS
研发这条路上已经有5年有余了,在最近四年多里都在使用Swift
开发项目,目前也在学习SwiftUI
。Swift 技术栈如下图:
前言
在App研发过程中,特别是在App架构设计有几点比较重要:
- 代码的可读性
SwiftLint
规范编写代码
- 代码的扩展性
- 产品思维能力
- 设计规范
- 技术选型
如何提升自己的架构设计:
- 完善自己的知识库
- 勤于思考,多沟通
- 多学习第三方优秀框架
- 拓宽知识面,比如多看Swift、SwiftUI、Python、Go、C/C++等语言。
工具使用
- Instruments - Xcode自带调试工具
- BuildTimeAnalyzer - 调试App启动耗时
- Charles - 抓包
- Reveal - UI调试
- MachOView/Hopper Disassembler/class-dump - mach-o静态分析
- Debugserver/LLDB - 代码调试
Swift 第三方库
网络请求
数据模型转换
崩溃跟踪、统计
Fabric
Crashlytics
图片下载和Webp动图
Texture – facebook团队封装的异步渲染第三方UI框架
UI 布局
Instagram
推出的一套数据驱动的UICollectionView
框架
函数式编程
RxCocoa
代码规范
网络监听
自定义弹窗提示
路由
自定义顶部导航栏Tap切换
视频缓存框架
数据加密解密
内购
App授权
弹窗提示
广告轮播图
列表空白页提示
Realm数据库
转场弹窗