我们的 Swift 项目上线已经有一段时间了。结合目前 Swift 的使用情况,总结下其与 Objective-C 相比的优缺点。
总的来说,我认为使用 Swift 来作为编程语言的优点还是要远远大于缺点的,而且很多缺点苹果也在逐渐改善。
-
优点
-
简洁的语法
-
更强的类型安全
-
函数式编程的支持
Swift 语言本身提供了对函数式编程的支持。
Objc 本身是不支持的,但是可以通过引入 ReactiveCocoa 这个库来支持函数式编程。 -
编写 OS X 下的自动化脚本
-
-
缺点
-
App 体积变大
使用 Swift 后, App 体积大概增加 10 M 左右,对体积大小敏感的慎用。
-
体积变大的原因是因为 Swift 还在变化,所以 Apple 没有在 iOS 系统里放入 Swift 的运行库,反而是每个 App 里都要包含其对应的 Swift 运行库。
-
Xcode 支持不够好
如果你是使用 Xcode经常卡住或者崩溃想必你是肯定碰到过了,这个是目前使用 Swift 最让人头疼的事情,即使是到现在XCode 8, 有时候也会遇到这种问题,所以要看你的承受力了……
-
第三方库的支持不够多
目前确实 Swift 编写的第三方库确实不多,但可以通过桥接的方式来使用 Objc 的三方库,基本上没有太大问题。现在已经改善很多了...
-
语言版本更新带来的编译问题
Swift 语言本身还在发展,所以每次版本更新后都会出现编译不过的情况(至少到目前为止还是),但是自从 1.0 版本发布后,改动没有 beta 时候那么大了,而且根据 Xcode 提示基本就可以解决语法变动导致的编译问题了。
网友评论