苹果正式发布 Swift 3.0 Preview 1 版本,同时发布 Xcode 8 Beta 版 - 开源中国社区
Float_left Icon_close
苹果正式发布 Swift 3.0 Preview 1 版本,同时发布 Xcode 8 Beta 版
研习君 2016年06月14日

苹果正式发布 Swift 3.0 Preview 1 版本,同时发布 Xcode 8 Beta 版

研习君 研习君 发布于2016年06月14日 收藏 5 评论 17

随着WWDC 2016的召开,苹果正式发布了Swift 3.0 Preview 1,这是苹果Swift 3语言的首个稳定开发者预览版。

苹果在其swift.org官方博客中称,Preview 1版本比代码库中打包的snapshot版本稳定很多。更新的特性包括去掉++和--操作符,更加Swift化的语言形式。详细的改进列表可以参考这里 https://swift.org/blog/swift-3-0-preview-1-released/

于此同时,苹果面向开发者发布了Xcode 8 Beta版本,Swift 3.0 Preview 1已经包含在这一版本中。开发者可以通过如下链接 https://developer.apple.com/xcode/download 获得Xcode 8 Beta和Swift 3.0 Preview 1。

( 来源:Swift3中文网 )

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:苹果正式发布 Swift 3.0 Preview 1 版本,同时发布 Xcode 8 Beta 版
分享
评论(17)
最新评论
0

引用来自“句龙胤”的评论

如果没有对C++的历史遗留问题有认知,就很难理解Swift的做法。
我并不使用这个Swift,但是Apple认真的态度让我赞叹。
如果你不长期使用C++,就无法体会到什么叫妥协,什么叫历史遗留问题。C++就是因为太在意兼容,背上了特别巨大的历史包袱,一大堆的历史遗留问题,其中多数是为了兼容于C,还有一部分是以前的糟糕设计。

Swift的做法特别好,就应该这样,早期不用去为了兼容妥协,只要能改善就改善,能重构就重构。随着时间的进行,Swift会越来越少不兼容的变动,因为那些都在现在做了。

这和软件工程一样,在需求阶段,需求随便改无所谓,但到了编码阶段你改需求试试?C++就是这样,现在是在维护阶段改需求,可想而知难度有多么变态。

Apple做的非常正确,现在就应该尽量的做好改动,反正是语言的初期。到了以后想改,就不是一般的麻烦了。Java就是了例子
兄弟,似乎你不是十分了解C++,现在的C++已经不是1999年的那个C++了,各种新特征已经和Java、C#没什么差别了,有些甚至比他们还好还方便,比如什么lambda表达式、函数对象、async、parallel什么的应有尽有。但最主要的是有2点其他语言没办法比的,就是移植性和性能兼备,一套代码可以在windows、linux、mac、ios、Android上通用,并且保持非常高的执行效率。比如我们的team作同样的SOAP网络通讯模块C++服务器比Java UI快了10倍,也就是说可以节约10被的运营成本。
0
如果没有对C++的历史遗留问题有认知,就很难理解Swift的做法。
我并不使用这个Swift,但是Apple认真的态度让我赞叹。
如果你不长期使用C++,就无法体会到什么叫妥协,什么叫历史遗留问题。C++就是因为太在意兼容,背上了特别巨大的历史包袱,一大堆的历史遗留问题,其中多数是为了兼容于C,还有一部分是以前的糟糕设计。

Swift的做法特别好,就应该这样,早期不用去为了兼容妥协,只要能改善就改善,能重构就重构。随着时间的进行,Swift会越来越少不兼容的变动,因为那些都在现在做了。

这和软件工程一样,在需求阶段,需求随便改无所谓,但到了编码阶段你改需求试试?C++就是这样,现在是在维护阶段改需求,可想而知难度有多么变态。

Apple做的非常正确,现在就应该尽量的做好改动,反正是语言的初期。到了以后想改,就不是一般的麻烦了。Java就是了例子
0

引用来自“Quttap”的评论

在进步还是退步?
去除++绝对是进步。因为++是直接对应的汇编,因为指令集有这个才出现的。
去掉++意味着离机器远了一步,非常正确,语言就应该能离机器多远就多远
0
在进步还是退步?
0
下面是swift代码, 包括建立一个http服务器, 连接sqllite数据库, 以及处理三个GET请求.

import Vapor
import Fluent
import FluentSQLite

let app = Application()

do {
let driver = try SQLiteDriver(path: "/home/helper/database/test.sqlite")
Database.default = Database(driver: driver)
} catch {
print("Could not open SQLite database: \(error)")
}

app.get("plaintext") { request in
return "Hello, world!"
}

app.get("json") { request in
return JSON([
"array": [1, 2, 3],
"dict": ["one": 1, "two": 2, "three": 3],
"int": 42,
"string": "test",
"double": 3.14,
"null": nil
])
}

app.get("sqlite-fetch") { request in
guard let user = try User.random() else {
throw Abort.notFound
}

return user
}

app.globalMiddleware = []

app.start()
0
swift3.0 web开发[ubuntu]性能测试: (吊打PHP5).. 此文还在不断更新中
https://medium.com/@qutheory/server-side-swift-vs-the-other-guys-2-speed-ca65b2f79505#.iqygs4glg

对比的框架( 所用的语言)
Vapor (Swift)
Ruby on Rails (Ruby)
Laravel (PHP)
Lumen (PHP)
Express (JavaScript)
Django (Python)
Flask (Python)
Spring (Java)
Nancy (C#)
Go (Pure Go, no framework)

测试的功能
Plaintext
JSON
Random SQLite Fetch
0
去掉一些不常用, 对初学者造成混淆的东西 a += 1 和 a++ 相比, 代码量并没有增加多少. 并且有了for in 和 range操作符 很少会用到自增或自减

他们的想法是宁可让一个另人不爽的设计一直存在, 不如持续改进直到满意为止.
0
什么时候支持windows系统
0
preview还要“正式”,2
0
这个时候出的语言改动还是这么巨大,我就想问是谁在设计语言的API?
0
GCD 怎么在Linux使用呢,连个线程都用不了~~~
0
终于更新了
0

引用来自“阿信sxq”的评论

感觉就是另外一个C#
感觉和c#1.0那个年代一样各种改动,估计之后还要断崖式升级的
0
去掉++和--?能算进步吗?
0
感觉就是另外一个C#
0
分分钟不兼容。
0
一步錯, 步步錯。
顶部