Swift介绍(基于Swift4版本)

Swift是为macOS、iOS、watchOS和tvOS设计的一门编程语言。简单易学、语法简单,交互性强都是它的特点。在设计这门语言时,就很注重考虑它的安全性,而且编译运行时也是非常的轻量快速。

Swift 4 是基于Swift 3 上的加强版本,带来更好的健壮性和稳定性。并且可以兼容Swift 3 的源代码。并对标准库进行了升级,带来了新的特性,比如smart key paths和serialization,而且大幅度的降低应用的编译时间以及应用的包大小。

在Swift Playgrounds中,你可以创建一段playgrounds的程序代码,它可以实时编译并快速的展示运行结果。甚至可以用playgrounds的代码来通过蓝牙控制机器人等硬件设备。正因为简单并且实时的交互性,可以更加激发学习者的兴趣,去创造更多有意思的东西并掌握这门语言。

开源

Swift 4 是在Swift.org平台上开源开发的,包含具体的源代码,bug跟踪日志,邮件反馈列表以及常规的开发编译工具。这些都是对所有人开放的。在活跃的开发社区中,既有苹果内部的开发者,也有外部的开发者。他们合力协作,让Swift语言越来越惊艳。Swift早已经支持苹果的所有平台,并且也支持Linux平台,并且社区中的人还继续努力,让Swift可以支持更多的平台,这是非常值得期待的,因为Swift是一门有趣的语言!

代码兼容模式

Swift 4 是向前兼容Swift 3 代码的。所以在使用Swift 4 ,不需要修改你之前的Swift代码就可以在新的编译器上运行。你可以根据自己的需要,移植你的代码到新的Swift 4 编译器上,并且享受Swift 4 带来的新特性。

你可以使用Swift 4 编译器中的三种模式:

  • Swift 3 编译器模式。这是默认的模式,会使用Swift 3 的编译器去编译代码。
  • Swift 4 编译器模式。这个模式下,你可以使用到Swift 4 的许多新的功能以及性能优化的体验。有些地方可能需要进行代码移植,但是这个从Swift 3 到Swift 4 的移植比起之前从Swift 2.2 到Swift 3 的移植要简单轻松的多。
  • 混合模式。这个模式可以让开发者进行Swift 3 和Swift 4 的混合编译。这样可以让开发者逐步慢慢的去迁移Swift 3的代码到Swift 4 上。

Swift 4 新特性

  • 更快速简单的使用Strings。其中包裹Unicode检查,子串的创建使用等操作。
  • Smart key paths特性为Swift的类型提供了类型安全检查、高效并且具有可扩展的键值编码(KVC)。
  • 对创建、操作字典集合类型进行了优化提高。
  • Extends对数据的序列化、以及序列化成外部的JSON或plist的支持。
  • 禁止直接访问内存。

现代化的语言

Swift是集当下编程语言之所长,并且融合了数十年苹果平台的开发经验到其中。它既包含Objective-C语言中的参数前置的表达形式,并且有简单整洁的语法,便于维护和阅读。类型推断让代码更健壮而且不容易发生错误。并且使用了modules和命名空间,这样就把把Headers给淘汰了。内存的自动管理,甚至不需要考虑代码后面的分号。这些超前的想法运用到Swift上,让这门语言更加的简单有趣。

extension String {
    var banana : String {
        let shortName = String(characters.dropFirst(1))
        return "\(self) \(self) Bo B\(shortName) Banana Fana Fo F\(shortName)"
    }
}

let bananaName = "Jimmy".banana     // "Jimmy Jimmy Bo Bimmy Banana Fana Fo Fimmy"

Swift还有很多的特性让你的代码变得惊艳,比如:

  • 闭包与函数指针的统一
  • 元组和多返回值
  • 泛型
  • 对集合在某个范围的快速迭代访问
  • 支持函数methods、扩展extensions、协议protocols
  • 函数式编程模型,比如map和filter
  • 使用try / catch / throw对本地的错误异常处理。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • TITLE: 编程语言乱炖 码农最大的烦恼——编程语言太多。不是我不学习,这世界变化快! 有时候还是蛮怀念十几、二...
    码园老农阅读 10,758评论 2 35
  • 是时候使用易入手又全面的Swif语言为iOS和mac OS X做应用开发了。 虽然编程语言不会那么容易消逝,但坚持...
    Neil举个栗子阅读 5,568评论 0 10
  • Swift 3 强大的编程语言也很容易学习。 Swift是一个强大和直观的编程语言为macOS,iOS,watch...
    魔灵FH阅读 4,082评论 0 0
  • 品读的谁的诗书谁的思想, 羡慕的谁的自在谁的自然, 陪伴着谁的明月谁的空旷; 晃动的谁的过客谁的灯光, 奏响的谁的...
    乙木子阅读 2,463评论 6 3
  • 上个月,电影《我不是药神》在全国上映 截止至今天,共斩获30.96亿票房 这部泪中带笑的影片涉及到了许多法律问题 ...
    daring婧阅读 1,085评论 0 1