A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fjwp4399 中级黑马   /  2015-4-17 09:12  /  1017 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

       让雨燕飞翔原创 2015-04-02 池建强 [url=]MacTalk[/url]

在2014年6月之前,如果我们在 Google 中输入「Swift」进行查找,搜到的是美国创作型歌手、大美女泰勒·斯威夫特。今天我们再去做同样的检索,搜索结果是一门编程语言,这门编程语言的名字就叫做「Swift」,它的 Logo 是一只极速飞翔的雨燕。
Swift 是 Apple 公司在2014年 WWDC 大会上推出的一门新语言,用于在 iOS/OS X 平台上开发应用程序,之前独霸这个庞大平台的语言一直是 Objective-C。可以说 Swift 是我所见过关注度最高的新语言,刚推出即万众瞩目,媒体和开发者在数天之内对 Swift 进行了集中的报道和讨论,英文手册迅速被翻译成中文,即使是谷歌 2009 年推出 Go 语言时也没有如此浩大的声势。时至今日,已经有大量的独立应用是基于 Swift 开发构建的。
2007年之前,Objective-C 一直是 Apple 自家后院的小众语言,iOS 移动设备的爆发让这门语言的普及率获得了火箭一般的蹿升速度,截止到今天,Objective-C 在编程语言排行榜上排名第三,江湖人称三哥。 Apple 一直在不遗余力的优化 Objective-C,包括把 GCC 的编译链替换成 LLVM + GCC,又替换成 LLVM + Clang,做语法简化、自动引用计数、增加 Blocks 和 GCD 多线程异步处理技术……既然已经全盘掌握了 LLVM 和 Clang 技术,为什么不开发一门新语言呢?于是 Swift 语言诞生了。
Swift 的作者是天才的70后程序员 Chris Lattner,他同时是LLVM 项目的主要发起人与作者之一、Clang 编译器的作者。Chris 毕业的时候正是 Apple 为了编译器焦头烂额的时候,因为 Apple 之前的软件产品都依赖于整条 GCC 编译链,而开源界的大爷们并不买 Apple 的帐,他们不愿意专门为了 Apple 公司的需求优化和改进 GCC 代码,所以 Apple 经过慎重的考虑后将编译器后端替换为 LLVM,并且把 Chris 招入麾下。 Chris 进入了 Apple 之后如鱼得水,不仅大幅度优化和改进 LLVM 以适应 Objective-C 的语法变革和性能要求,同时发起了 CLang 项目,旨在全面替换 GCC。这个目标已经实现了,从 OS X 10.9和 XCode 5开始,LLVM + GCC 已经被替换成了 LLVM + Clang。
Swift 是 Chris 在 LLVM 和 Clang 之后第三个伟大的项目!
Swift 是一门博采众长的现代语言,在设计的过程中, Chris 参考了Objective-C,Rust,Haskell,Ruby,Python,C#等优秀语言的特点,最终形成了 Swift 的语法特性。Swift 是面向 Cocoa 和 Cocoa Touch 的编程语言,编译型,类型安全,生产环境的代码都需要 LLVM 编译成本地代码才能执行,但是 Swift 又具备很多动态语言的语法特性和交互方式,支持各种高级语言特性,包括闭包、泛型、面向对象、多返回值、可选变量、类型接口、元组、集合等。
很显然,这是一门准备取代 Objective-C 的编程语言,它将吸引更多的开发者加入苹果的软件生态圈,为 iOS 和 OS X 开发出更为丰富的 App。如果你是 App Store 的开发者,推荐尽早学习和掌握这门苹果力推的新语言。对于大部分新事物来说,越早介入,收获越大。
Swift 入门并不困难,Apple 公司甚至为这门语言提供了所写即所得的 Playground 功能,不仅实现了很多脚本语言支持的交互式编程,而且提供控制台输出、实时图形图像、时间线(timeline)变量跟踪等功能,开发者除了可以看到代码的实时运行结果,还能根据时间线阅读某个变量在代码片段中值的变化。这真是太棒了!另外,阅读官方提供的《The Swift Programming Language》也是快速入门的途径,Cocoa 开发者社区甚至在第一时间提供了高质量的中译本。
问题的关键是入门了之后怎么办?当你读完教程学习了语法,自觉成竹在胸拔剑四顾的时候,突然发现 Swift 在实际的项目应用中会出现各种各样的问题,就像你手持一柄玄铁重剑,却无法洞悉剑诀的奥秘。如何让「雨燕」迅疾的飞翔?这就是《Swifter - 100 个 Swift 必备 tips》这本书要解决的问题。
书的作者王巍是我非常尊敬的一位 iOS 开发者,他的网络 ID 是「onevcat」,大家都叫他喵神。王巍毕业于清华大学,在校期间就对 iOS 开发一往情深,曾经开发出「小熊推金币」、「Pomo Do」等一系列优秀的 iOS 游戏和应用。工作和开发之余,王巍也在参与 iOS 开发社区的建设,比如发起和组织翻译项目「objc 中国」,开源Xcode 插件 VVDocumenter 项目等,这本《Swifter - 100 个 Swift 必备 tips》同样是他对社区的贡献之一。
王巍是一个在技术上对自己有要求的程序员,在涉及的每个领域,他都希望能够做到庖丁解牛,游刃有余。既能洞悉全局,又可直达细节。王巍2014年赴美参加了 Apple 的 WWDC 大会。可以说,从 Swift 诞生的那一分钟起,王巍就开始学习和研究这门语言。他在自己的博文「行走于 Swift 的世界中」阐述了大量 Swift 的语法细节和底层实现机制,并对这篇文章进行了持续的更新,这篇文章在 Swift 社区获得了巨大的反响。之后,王巍持续学习 Swift 语言,并进行了编程实践和项目实战,他把自己的学习心得和编程技巧进行了梳理和完善,最终形成了这本《Swifter - 100 个 Swift 必备 tips》。书中共有100个 Swift 编程技巧,几乎涵盖了 Swift 语言的所有细节,每篇独立成文,可拆可合,读者可以随时翻阅,也可以遇到实际问题后再来检索。
这本书最早的版本是电子书,我在它出版的第一时间就买了来读,之后随用随读,这本书让我对 Swift 语言有了更为深入的了解,也解决了我的团队在开发过程中的很多实际问题。所以,当获知王巍的这本书要出纸版的时候,我觉得我有责任让更多的人知道这本书。在目前这样一个知识版权认知匮乏的年代,优秀的原创作者总是值得尊敬,他们的图书作品也值得我们珍惜,我希望把这本书推荐给每一个 iOS 开发者,它值得我这么做。
目前王巍旅居日本,就职于即时通讯软件公司 Line。他依然行走在修行的路上,孜孜以求创意之源。祝愿在未来的日子里,王巍能为这个世界呈现更好的软件产品和技术图书。落花无言,人淡如菊,书之岁华,其曰可读。这大概就是王巍目前的写照。
作为开发者,我们要做的就是找到这个领域的灯塔,阅读、学习,然后 Write the code, Change the world,并期待下一个收获的季节!
该纸版书即将上市,电子版:
[url=]http://swifter.tips/buy/[/url]




[url=]阅读原文[/url]




微信扫一扫
关注该公众号





0 个回复

您需要登录后才可以回帖 登录 | 加入黑马