![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 可樂快跑 ![]()
![]() |
但是也感謝您被我騙了進來。 不是!我才沒有要騙你呢! 其實我想應該很多初學swift的人跟我一樣,覺得怎麼這個sqlite還要去引用obj-c的程式這麼麻煩。 那用coredata寫出來的code又很密密麻麻不直覺。 也許寫過其他的language就會覺得他們的orm封裝的多好使用。 現在,你們有更好的新選擇可以用了。 這個東西叫做Realm。 一開始我看到Realm時,我以為他只是sqlite的另一種物件封裝,只是封裝的很漂亮很好用。 後來重新讀過他的說明,才知道Realm並不是sqlite,Realm本身就是一套自主的資料庫系統架構。 他的存檔的檔名就叫做.realm 這一套相當強大,不但是個良好物件封裝讓你可以很輕鬆的操控crud。 他的所有table(entity)和column(property)就是你直接寫class設置好就行了。 如果你有新增或是刪除結構時,他的遷移功能相當強大。 之前在swift2寫coredata,如果不在appdelegate改一些東西,你遷移結構時甚至會發生資料遺失的狀況。 但是realm的遷移很簡單……改版本號後下一次的執行就遷移完了。 而且我測過資料不會發生任何問題。 另外realm的特殊關聯模型可以讓你很方便的找到資料的相依性。 但也因為這些資料的處理,據說realm的存入速度只有sqlite的一半………(我想還是很快吧。你沒事不會一口氣存個幾千或上萬筆資料到手機吧!) 但是,可能因為寫入後的結構,realm的讀取速度據說是sqlite的三倍!(我覺得讀取才是比較重要的啊。) 總之,誠摯推薦沒使用過的各位能夠去參考看看。 對了。Realm不是只有swift,他支援的語言有:Swift、Objective-C、Android、React.js以及xamarin(C#) 以下提供官網給各位前去參考,未來有機會我有時間再寫相關的教學吧。 因為是swift,所以我直接就導到swift的說明了。 Realm官網(Swift)
== 簽名檔 ==
發問的美學: 1.確定你的先備知識條件足夠,基礎該學習的就不應該問人。 2.先思考過或先google過。 3.明確表達問題。 4.表達明確,能詳細問題的code。 5.發問的問題,絕不刪除,留給其他遇到相同問題的人一個好的紀錄。 6.我的skype或line是tkdmaf,歡迎直接詢問。 |