一句话笔记,某段时间内遇到或看到的某个可记录的点。
- 使用 Swift打的包为什么比OC的大?
- 打的包为什么比下载时候的大?
- Swift的枚举与OC的枚举区别?
- 代理方法 Optional不实现有没有问题? 怎么规避?
一、使用 Swift 打的包为什么比OC的大?
- 兼容版本太多,暂时没能用到动态库。
Swift 版本进化更新速度太快 ,每个版本都有自己的依赖库 ,ABI不稳定,是没办法用动态库的。 - 好像 Swift 5 会有这块的优化的。
二、打的包为什么比下载时候的大?
苹果会对 App 进行重新编译(如果上传了 BitCode),也会针对不同的设备型号、iOS 版本分发不同的资源(比如 2x、3x 的图片),最后还会对整个 .ipa 进行压缩,以减少从 App Store 下载时耗费的流量。
三、Swift的枚举与OC的枚举区别?
- Swift 写法不同, case
- Swift 支持类型更多,String
- Swift 还有一些高级用法
四、代理方法 optional 不实现有没有问题? 怎么规避?
- 如果没有可选修饰,遵守了代理而不实现代理方法,不是警告,而是直接报错 。
- 要想使用可选实现的修饰
optional
,必须使用@objc
修饰
网友评论