项目配比
ios 2人,android 3人!
背景
之前的IOS端项目是使用OC开发的,已经到了2.0版本了,本人现在是做android客户端,但现在想加速ios的开发进度,所以,我决定使用swift参与到ios项目中。
遇到的问题
因为没有过类似的经验,所以想请教下过来人,如何用swift杀入现有的oc项目。特别是UI这块的融入,以及OC之前封装的一些工具的调用。
swift优秀的类型检测,刚开始可能会让你很不适应,各种麻烦的判断和处理!但是适应以后,你会发现,你从未对自己写的程序如此放心
发布包回比之前至少增加6M的大小,因为需要将swift运行时库打包进去
6M
只需要增加一个头文件,之前所有objective-c写的东西都可以放心地直接使用
一旦你开始使用之前objective-c写的东西,你很有可能想用swift重写它,因为objective-c缺少很多类型校验能力,比如:swift这边调用objectForKey:方法通常会返回AnyObject,你就需要对此做类型转换
objectForKey:
swift会强迫你考虑所有逻辑上明显是错误的情况,这样可以降低运行时出错的几率;但是也因此,你会经常看到一些“莫名其妙”的报错,仔细阅读错误提示,你会发现你真的是错了
之前objective-c极大部分API都是相同的,苹果只是使用swift做了一层皮,内部还是调用objective-c,Fundation的实现在这里: https://github.com/apple/swift-corelibs-foundation
String != NSString
指针变量用起来会很麻烦....
整体来说,swift并没有提高开发的效率(也许开发效率更慢了),但是,当你的应用上线以后,你会发现,你从未对自己写的代码如此放心过,因为通过了编译的代码,意味着它已经避免了大部分的错误。混编会让项目变得复杂,如果是团队协作,使用swift之前,应该让整个团队的所有人都知道这是怎么回事。
错误指出请指出:)
swift优秀的类型检测,刚开始可能会让你很不适应,各种麻烦的判断和处理!但是适应以后,你会发现,你从未对自己写的程序如此放心
发布包回比之前至少增加
6M
的大小,因为需要将swift运行时库打包进去只需要增加一个头文件,之前所有objective-c写的东西都可以放心地直接使用
一旦你开始使用之前objective-c写的东西,你很有可能想用swift重写它,因为objective-c缺少很多类型校验能力,比如:swift这边调用
objectForKey:
方法通常会返回AnyObject,你就需要对此做类型转换swift会强迫你考虑所有逻辑上明显是错误的情况,这样可以降低运行时出错的几率;但是也因此,你会经常看到一些“莫名其妙”的报错,仔细阅读错误提示,你会发现你真的是错了
之前objective-c极大部分API都是相同的,苹果只是使用swift做了一层皮,内部还是调用objective-c,Fundation的实现在这里: https://github.com/apple/swift-corelibs-foundation
String != NSString
指针变量用起来会很麻烦
....
整体来说,swift并没有提高开发的效率(也许开发效率更慢了),但是,当你的应用上线以后,你会发现,你从未对自己写的代码如此放心过,因为通过了编译的代码,意味着它已经避免了大部分的错误。混编会让项目变得复杂,如果是团队协作,使用swift之前,应该让整个团队的所有人都知道这是怎么回事。
错误指出请指出:)