您所在的位置:主页 > iOS开发培训 >

浅谈苹果swift编程语言

时间:2015-06-10 17:25来源:未知 作者:os 点击:

       Apple软体工程资深副总裁Craig Federighi在WWDC的Keynote上表示,未来开发者可以在Linux、OS X及iOS上编译用Swift开发的程式码。此外,Apple打算开源的程式码会包含Swift编译器以及Swift的标准函式库。
 
       Apple在2015 WWDC发表了Swift语言的2.0版,并宣布在今年年底以开源形式释出,除了原有iOS和OS X环境外,将支援Linux环境。Apple在官网上解释开源原因,希望能让Swift在所有平台上运作,未来将积极鼓励,接受来自开源社群贡献的Swift程式码。
 
        Apple软体工程资深副总裁Craig Federighi在WWDC的Keynote上表示,Apple目前计画年底前开源释出Swift编译器以及Swift的标准函式库。未来开发者可以在Linux、OS X及iOS上编译用Swift开发的程式码。
 
        在2014年的WWDC,Apple首次发表了用来开发OS X及iOS App的Swift语言,这是一个类似直译式脚本语言的开发语言,可使用Cocoa及Cocoa Touch开发框架来开发。Swift强调简洁、有趣、安全与快速的程式语言,目的是取代过去开发Mac及iOS装置的主要语言Objective-C。Objective-C是以C语言为基础的程式语言,由于历史悠久,以致于不能使用较新程式语言提供的程式设计方法。
 
        Swift可以把程式码直接编译为机器语言,如同较为现代的Google的Go语言及Mozilla的Rust语言。不同于Java或C#的高阶程式语言,必须先透过编译器,将这类高阶语言编译成虚拟机器语言,最后再透过虚拟机器,把虚拟机器语言解译为机器语言。而外界普遍看好Swift语言原因是它不只具备了编译式语言的效能,也兼备了脚本语言的简洁与互动等特性。
 
       Apple在官网上表示,新版Swift除了改善效能外,也新增了包括错误处理模型(Error Handling Model)、可用性检查支援及协定扩充机制(Protocol Extensions)等功能。
 
       Swift 2.0中新的除错处理模型中使用了在Java、C#中开发者很熟悉的try、throw及catch语法,可供开发者无痛转移到Swift,更快上手利用Swift来执行例外处理。Apple也表示,此功能将可支援Apple SDK及NSError物件。另外也新增了可用性检查,新版SDK可以确保开发者随时取得平台异动资讯及新功能。不过,遇到不支援最新API的旧版本作业系统,Swift编译器就会显示错误。开发者可以使用#available指令,来检查程式码是否相容于目前的作业系统版本。
 
       另一个新版特色是协定扩充机制,Apple表示,可利用此机制来扩充标准函式库。例如可在全域函数(Global functioins)处,对通用类型(Common types)扩充新的方法(method),来提高程式码的可读性。
 
        苹果宣布开源Swift也大受开源开发者的支持,在知名论坛Hacker News引起广大讨论,多数认为尽管苹果开源动作太慢,但仍比没有开源有很大的进展。