layout: post title: D码点评:22 swift description: ~ 麻辣评点,善意满盈 author: zoomq categories: gDgcoDe tags: gdg D码点评 dd wechat coding
今天凌晨已经有人在微信圈发布招聘信息曰:
急招 iOS 工程师,要求 Swift 语言,开发经验一天以上!
在 Swift 发布前,iOS 和 OS X 的开发语言是 Objective C,这是一款已经三十多岁的编程语言,并且其语法十分之吊诡,和其他 C 语言风格的编程语言有着极大的区别. 因此,让许多想转做 iOS 端应用开发的程序猿纷纷吐槽,"为什么 Objective C 这么难学?!"即便是一些已经在做 iOS 端开发的程序猿也表示,如果不是苹果只支持 Objective C,自己其实并不想用 Objective C 做开发.
因此,苹果此次发布的 Swift 这款语法更为简洁的,兼容 Objective C 的语言. 而在其开发者指南中,我们可以看到 Swift 从 Python 和 Java Script 中学得了许多东西,从而让 Swift 更为易读,或者说更为"口语化".
![SwiftTour_2x.png(PNG 图像,640x570 像素)](https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/Art/SwiftTour_2x.png
参考: The Swift Programming Language: About Swift
让我们看看具体的代码:
println("Hello, world")
对比Python 的:
print("Hello, world")
嗯嗯嗯,明白了点什么吧...
值声明:
var myVariable = 42 //变量 myVariable = 50 let myConstant = 42 //常量
基础数据/控制结构:
let individualScores = [75, 43, 103, 87, 12] var teamScore = 0 for score in individualScores { if score > 50 { teamScores += 3 } else { teamScores += 1 } } println(teamScore)
for-in
算子:
let interestingNumbers = [ "Prime": [2, 3, 5, 7, 11, 13], "Fibonacci": [1, 1, 2, 3, 5, 8], "Square": [1, 4, 9, 16, 25], ] var largest = 0 for (kind, numbers) in interestingNumbers { for number in numbers { if number > largest { largest = number } } }
函式声明:
func greet(name: String, day: String) -> String { return "Hello \(name), today is \(day)." } greet("Bob", "Tuesday")
函数可以接受可变参数个数,收集到一个数组中:
func sumOf(numbers: Int...) -> Int { var sum = 0 for number in numbers { sum += number } return sum } sumOf() sumOf(42, 597, 12)
函式可以嵌套:
func returnFifteen() -> Int { var y = 10 func add() { y += 5 } add() return y } //by gashero returnFifteen()
函数传递:
func makeIncrementer() -> (Int -> Int) { func addOne(number: Int) -> Int { return 1 + number } return addOne } var increment = makeIncrementer() increment(7)
等等...
总之这是一种可以混入 Object-C 长的象 JS 的 Python 脚本语言了 ;-)
是也乎
6.1 之后的 WWDC 2014 上,最大的明星就是这款已经在 Apple 内部运用不少年头的全新语言了!
之前 Google 连续发布了 Go/Dart 编程语言,以及 GAS 等开发平台云, 现在 Apple 果断也坐不住了, 在保存了 Object-C 的以往优势后, 融合了全新现代语言的特性,开始兼顾学习/执行效率.
那么中国本土IT 公司都有什么类似的行为呢?
其实是有的,只是无法营造出 WWDC 这种大舞台来展示而已.
所以? 尽情的折腾吧!
中文的入门教程已经有了: Apple Swift编程语言入门教程 - gashero的Geek前哨 - ITeye技术网站
而且已经有人用 Swift 将Flappy重写了一次:
- https://github.com/fullstackio/FlappySwift
以上...
码不停提马上无虫 ;-)
|_|0|_| |_|_|0| |0|0|0|
加入 珠海GDG
- 注册 G+
- 关注 GDG Zhuhai
- 成为 GDG Zhuha开发者
通过 珠海GDG 可以:
第一时间获知谷歌最新的技术, 可以学到如何去谷歌平台上赚钱的思路和方法, 可以认识很多有可能将来一起走上自己创业道路的人, 可以学会把你的创新带向国际市场, 参加那里的活动有经常和国际上的开发者们进行交流的机会...
PS:
若无意外,题图都是从原文提取或是通过 Google 图片搜索出来的, 版权属左, 不负责任 ;-)
PPS:
珠海GDG wechat/Blog 都是欢迎投稿的,只要追认内容吻合以下条件:
0. 有趣 ~ 至少是自个儿有兴趣的领域吧... 1. 有料 ~ 至少有点儿原创的东西吧.. 2. 有种 ~ 至少不能是成功学吧!
有好物的,及时向大妈们吼: [email protected]
微信栏目
当前应该是:
G术图书 (gb:推荐好书,书无中外) D码点评 (dd:麻辣评点,善意满盈) G说公论 (gt:时评杂文,新旧不拘) 珠的自白(dm:大妈自述,每周一篇) 海选文章(hd:得要相信,大妈法眼)
总之! 珠海的组委大妈们,决定开始坚持发文,方方面面细细同大家分享/交流
总之! 请大家告诉大家, 珠海生活中的技术社区
已经认真回归 微信,都来订阅吧!
订阅方法
- 搜索微信号
GDG-ZhuHai
- 或查找公众号:
GDG珠海
- 或扫描:
GDG珠海 社区资源:
- 邮件列表: [email protected] (可发空邮件到 [email protected] 即完成订阅)
- 微博: @GDG珠海
- 微信: GDG珠海
- G+ 主页: GDG ZhuHai
- G+ 社群: ZhuHai GDG
Author: /mail / gittip / github