"Swift 还是 Objective-C?" 这才是问题所在!
一些关于是选择 Objective-C 还是 Swift 的想法。
引言
如今在 Apple 的世界里,经常有人会问是应该从新的语言 Swift 入手,还是 Objective-C。
背景
我正在使用 Objective-C 编程,但现在正在学习 Swift,并且有一些经验,看到了它的一些优点和缺点。
分号在哪里?
答案如预期:42。这两种语言其实区别不大。它们都使用 LLVM 编译,但 Swift 具有更多更好的优化。此外,“桥接”这两种语言是可行的。Swift 在很多方面都是 Objective-C 的“压缩”版本。
对于初学者,我推荐 Objective-C,因为它是一种常用的语言,并且有大量的代码可用。
Swift 更现代,非常紧凑,因此它真的不需要分号,并且可以用几行代码完成很多事情。例如,它没有头文件,声明也同时定义了类型和值是常量。
let text = "I am a fixed text" // let declares a constant var number = 10.0 // var declares a variable, the right assigment declares the type double var state = eStateNormal // a var of my EnumState
备注:也可以显式定义类型,但由于需要初始化,因此通常不需要。
var text:String = "I am a normal text" // declares a normal string
Swift 在处理可选值时会变得棘手。这些是“盒子”类型,可能包含也可能不包含值。由于它们会抛出异常,因此编码人员应该小心处理它们。
var object? //needs no value now object = "Hello world" //assigment if let text = object! { //unwrapping the optional println("Value is \(value)") //how to format a string }
关注点
这是我简短的观点,不想把它变成战场。
获取详细信息,首先要访问Apple 开发者网站。我喜欢观看 WWDC 视频来入门。
我还推荐查看著名网站 Ray Wenderlich。对于像你这样的初学者来说,视频计划是一个有趣的投资。
我只会在一个新的“白纸”项目中使用 Swift,因为我不喜欢在一个项目中使用多种语言。
历史
初稿。