Swift历史

创造者:克里斯·拉特纳(Chris Lattner  ,70后程序员,LLVM 主要发起人与作者之一、Clang 编译器的作者)

作者博客:http://nondot.org/sabre/

Swift中文名:雨燕 

开始开发时间:2010年7月

Swift 推出时间:WWDC2014(2014.06.03)

特色:

闭包

泛型

元组 和 多个返回值

命名空间

类型推断 类型安全

内存自动管理

去头文件引入

去main()

分号

全面的Unicode支持

与 Objective-C 进行混合编程,但代码分属不同的文件

介绍:

Swift 是面向 Cocoa 和 Cocoa Touch 的编程语言,编译型语言,生产环境的代码都需要 LLVM 编译成本地代码才能执行,但是Swift又具备很多动态语言的语法特性和交互方式。

Swift是本地代码(native code)语言,将被编译成被CPU直接执行的机械码,不像JavaScript、Python等脚本语言解释执行,也不像Java、C#编译成中间代码并需要虚拟机来执行,所以Swift的效率可以得到保证

Swift是一种类型安全的语言。类型安全就是说在编程的时候需要弄清楚变量的类型。因为Swift是类型安全的,它会在编译的时候就检查你的代码,任何类型不匹配时都会报错。如果不指定你需要的类型,Swift使用类型推导来指定出相应的类型。类型推导使编译器在编译的时候通过你提供的初始化值自动推导出特定的表达式的类型。

Swift 没有提供显式的指针,参数传递根据数据类型的不同分为值类型和引用类型,值传递进行内存拷贝,引用传递最终传递的是一个指向原有对象的指针。这一点和 Java 的参数传递是类似的。需要注意的一点是,Swift 里的数组和字典虽然都是结构体(struct),但在参数传递过程中处理方式却不一样,默认 Array 是引用传递,Dictionary 是值传递。而在 Java 中,由于数组和 Map 都是对象,所以传递的都是指针

Swift 没有从语言层面支持异步和多核,不过可以直接在 Swift 中复用 GCD 的 API 实现异步功能。另外没看到 Swift 的异常处理机制,可能有了可选变量,异常的使用会非常少吧。



    

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • TITLE: 编程语言乱炖 码农最大的烦恼——编程语言太多。不是我不学习,这世界变化快! 有时候还是蛮怀念十几、二...
    码园老农阅读 5,444评论 2 35
  • 严格的公司制度 之前在一个公司做了两年半,这期间走的人多,来的人也多。 我们公司一直践行一个制度:提交提案!——意...
    佑眼睛阅读 127评论 0 0
  • 前言 JSP隐式对象是JSP容器为每个页面提供的Java对象,开发者可以直接使用它们而不用显式声明。JSP隐式对象...
    封面人物小柚阅读 601评论 0 0
  • Adidas 已经准备了一个高科技平台打算将运动鞋的制造带回德国. 在关掉了在安斯巴赫里的巴伐利亚 的工厂后, 一...
    Yeek阅读 197评论 0 0