日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > 移動數據庫新疆界:開源、Swift、可穿戴...

移動數據庫新疆界:開源、Swift、可穿戴...

來源:程序員人生   發布時間:2014-09-29 08:00:01 閱讀次數:1969次

在各種移動App開發炙手可熱的今天,移動數據庫即使運用已十分廣泛,但其發展卻與之形成鮮明對比。數據顯示,在過往十年的時間里,數據庫創新層出不窮,服務器端數據庫數量更是爆發式增長,刨除MySQL、PostgreSQL等老牌數據庫,自2007年iPhone面世以來,已有包括Redis、Neo4J、TokuDB等超過30種服務器端數據庫技術誕生,然而頗讓人詫異的是,其中卻無一是專門針對移動平臺而設計的,移動端數據庫發展呈現出躊躇不前的狀態。


為此,由YCombinator孵化的創業團隊Realm歷時幾年開發出了一款能夠直接在手機、平板電腦及可穿戴設備上運行的開源移動數據庫。不同于常規的服務器端數據庫,Realm不僅能讓開發者更為快捷地構建應用,還將賦予其極佳的用戶體驗。而開發者可以直接在自己所開發的iOS應用中使用Realm,存儲和查詢本地數據。


目前,Realm僅支持iOS平臺,未來將逐漸支持Android。現在,開發者可以在Objective-C和Swift中使用它。Realm最大的特點之一就是其易用性極強,數據可以直接作為對象使用,并通過代碼查詢,而無需再頭疼ORM眾多坑爹的性能和維護問題。此外,Realm團隊還將API限制在僅有3個常用類(Object、Arrays和Realms)和1個實用類(Migrations),以保證用戶可以直接、快速地使用。

Realm代碼示例(分別為使用Objective-C和Swift):

// Using Realm in Objective-C
/* Dog.h */
@interface Dog : RLMObject
@property NSString *name;
@property NSInteger age;
@end
RLM_ARRAY_TYPE(Dog)
/* Elsewhere */
Dog *mydog = [[Dog alloc] init];
mydog.name = @"Rex"; mydog.age = 9;
NSLog(@"Name of dog: %@", mydog.name);
RLMRealm *realm = [RLMRealm defaultRealm]; // Access default realm (database) on disk
// Transactions for full ACID guarantees
[realm beginWriteTransaction];
[realm addObject:mydog];
[realm commitWriteTransaction];
// You can safety transact across threads as well
// Query
RLMArray *results = [Dog objectsWhere:@"name contains 'x'"];
// Link objects in a Graph
Person *person = [[Person alloc] init];
person.name = @"Tim";
[person.dogs addObject:mydog];

// Using Realm in Swift
/* Dog.swift */
class Dog: RLMObject {
    var name = ""
    var age = 0
}
/* Elsewhere */
var mydog = Dog()
mydog.name = "Rex"; mydog.age = 9
println("Name of dog: (mydog.name)")
let realm = RLMRealm.defaultRealm() // Access default realm (database) on disk
// Transactions for full ACID guarantees
realm.beginWriteTransaction()
realm.addObject(mydog)
realm.commitWriteTransaction()
// You can safely transact across threads as well
// Query
var results = Dog.objectsWhere("name contains 'x'")
// Link objects in a Graph
var person = Person()
person.name = "Tim"
person.dogs.addObject(mydog)

相關鏈接:Realm官網、mobilehub主頁


CSDN在線培訓――Swift:iOS開發的未來

CSDN邀請美國加州州立大學計算機碩士、前網易新聞客戶端iOS核心開發、《The Swift Programming Language》中文版翻譯成員、Swiftist.org社區發起人 李潔信,介紹Swift語言語法、Swift和Objective-C的互用機制以及如何使用Swift更高效地開發iOS App。【 報名地址

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 成人免费毛片片v | 日韩视频免费在线观看 | 亚洲欧美综合精品久久成人 | 精品九九九九九 | 欧美午夜精品一区二区三区 | 国产福利不卡 | 国产精品一区二区女厕厕 | 九九av| www免费视频| 久久免费国产精品 | 黄色在线视频网站 | 日韩不卡一区二区三区 | 欧美日韩精品一区二区 | 中文字幕在线观看日本 | 欧美日韩亚洲综合 | 国产伦精品一区二区三区在线 | 免费日韩av在线 | 全部免费毛片在线播放网站 | 亚洲精品久久久久久久久久久久久 | 91成人精品 | 国产黄色小视频 | 日韩1区| 日日干天天射 | a一级黄色大片 | 精品综合久久 | 亚洲国产福利 | 日本 欧美 国产 | 日本欧美视频 | 五月天久久久 | 成人区精品一区二区 | 国产精品第一国产精品 | 中文字幕久久久 | 99这里只有精品 | 久久网国产 | 久久999免费视频 | 亚洲一区av在线 | 国产精品视频一二三四区 | 久久99精品久久久久婷综合 | 二区三区在线 | 国产a级毛片| 亚洲成人www |