成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

iOS 8/OS X 10.10 對 CoreData 的改進

移動開發 iOS
自 CoreData 首先在 OS X 10.4 Tiger 上登陸以來,經過那么多版本的發展,現在各方面已經相當的完善了,因而在這次 iOS 8/OS X 10.10 上,CoreData 的特性變化不多,只有幾項,但是都是著眼于性能及體驗

看了好多集 WWDC 了,感覺再不做點筆記又要忘記光了,所以從和我關系***的 CoreData 開始吧。

自 CoreData 首先在 OS X 10.4 Tiger 上登陸以來,經過那么多版本的發展現在各方面已經相當的完善了,因而在這次 iOS 8/OS X 10.10 上,CoreData 的特性變化不多,只有幾項,但是都是著眼于性能及體驗方面的,非常值得一用。

這些分別是:
Batch Updates
說起來,這可能是不用 CoreData 的人***個質疑的理由:什么?我竟然不能寫一句簡單的 SQL 把我所有的 Entry 的某個字段給更新或刪除掉,這樣的數據庫還算是數據庫嗎?
事實就是 CoreData 本來就不是個數據庫,不過在發展了那么多年后,這個 Batch Updates 終于讓它更加「數據庫友好」了。

通過新增的 NSBatchUpdateReuqest 和 NSBatchUpdateResult 來完成批量更新數據的操作,你終于能非常快速的通過類 SQL 語言更新數據庫那樣的操作來對整個數據庫進行修改了,而不用像以前一樣,要針對每個 Object 進行更新,又慢又消耗內存。它會返回成功或失敗,改變的行數,被改變的 ID 數組,簡直就和查詢數據庫一樣。

當然,這個 Batch Updates 會有一點副作用——即更新后 Context 不會有對應的反應,因此你需要手動去刷新 Context,以免造成界面和數據不一致。其他如限定在 NSManagedObject 上的 validation 也就此失效,所以——就像操作傳統數據庫一樣,也要小心使用 CoreData 的 Batch Updates。

Asynchronous Fetching
這算是體驗上的一個很好的改進了,終于有內置的設計優良的「異步獲取」方法了,更棒的是,它還能和 NSProgress 這個一起協作,因此「異步」+「進度更新」可以非常簡單地得到支持。
這個主要由新增的 NSAsynchronousFetchResult 類來完成,這是一個非常典型的立即返回+結果回調的東西,你需要在 Private 或 Main 的 Context 來做這個操作,其他的使用就非常簡單。
當你有非常多的條目需要一次性載入時,Asynchronous Fetching 就是必用的。
其他

Incremental store 這節沒怎么看懂,需要再看一遍。此外,在并發方面,CoreData 除了在以前 NSManagedContext 上對 performBlock 的支持外,還對 NSPersistentStoreCoordinator 也增加了這個的支持。關于這個我還沒有什么體會,畢竟沒有用到多個 StoreCoordinator。

此外,iOS 也和 OS X 一樣,針對 Concurrecy 也支持這樣的 debug 了:com.apple.CoreData.ConcurrencyDebug 1
***,就是關于 Swift 對 CoreData 的支持,基本上和 Objective-C 無異,主要是 NSManagedObject 需要用 @NSManaged 來修飾變量,還有 Model 那里需要把 class 的 namespace 也寫進去。
根據官方演示的例子,同樣的數據庫,用 Swift 寫的 CoreData 程序還比 Objective-C 的性能要高…我已經迫不及待要用 Swift 來寫我的 iOS App 了。

本文鏈接:http://www.cocoachina.com/applenews/devnews/2014/0724/9235.html

責任編輯:chenqingxiang 來源: cocoachina
相關推薦

2014-05-30 16:56:00

WWDC2014OS X 10.10蘋果

2013-10-09 09:45:15

OS XOS X 10.10

2012-08-20 09:37:43

2011-06-20 14:04:14

Mac OS X

2012-02-17 14:41:12

Mac OS XOS XiOS

2015-08-05 13:56:30

2014-05-09 11:23:29

iOS移動互聯網

2010-07-15 14:37:20

Ubuntu 10.1

2015-02-27 09:13:08

OS XiOSLinux

2012-02-17 09:21:22

Mac OS X

2014-05-21 15:42:12

OS X補丁

2011-07-19 09:42:40

iOS 5Mac OS X Li技術展望

2012-09-27 09:23:41

Win 8 OS X Mount

2012-07-13 09:52:31

Mac OS X

2011-10-20 20:56:42

UbuntuMac OS X

2009-06-24 08:38:28

微軟Windows 7操作系統

2015-07-15 11:38:20

OSXIOS更新

2012-12-26 09:41:13

2009-07-14 17:10:44

struts2webwork

2014-06-03 16:59:22

OS XOS X Yosemi
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久草.com| 精品视频一区二区 | 91麻豆精品一区二区三区 | 欧美精品成人 | 免费精品久久久久久中文字幕 | 国产精品资源在线观看 | 欧美极品一区二区 | 91tv在线观看 | 免费看国产精品视频 | 女朋友的闺蜜3韩国三级 | 精品国产乱码久久久久久闺蜜 | 国产在线一区二 | 精品一区二区在线观看 | 超碰91在线| 中国av在线免费观看 | 欧美日韩中文在线 | 亚洲在线成人 | 全免费a级毛片免费看视频免 | 免费观看一区二区三区毛片 | 欧美福利精品 | 亚洲狠狠 | 国产精品久久久久久久久久 | 91人人爽| 91在线观看 | 一级黄色录像毛片 | 国产91久久久久久久免费 | 欧美一区二区三区在线 | 国产精品视频久久 | 日韩网站在线观看 | 国产精品久久久久久久久久三级 | 一级全黄少妇性色生活免费看 | 中文字幕亚洲精品在线观看 | 美女爽到呻吟久久久久 | 999免费观看视频 | 国产精品欧美一区二区 | 国产精品欧美一区二区三区 | 国产色99精品9i | 色婷婷一区| 成年网站在线观看 | 毛片一级片 | www.久久 |