大家好!我想用swift做开发 请问core data是内置数据库吗?像sql一样的吗?

大家好!我想用swift做开发 请问core data是内置数据库吗?像sql一样的吗?,第1张

这两个东西我都用过,两者都能实现对数据库 *** 作,功能上需求都能满足。

先前在公司实习的时候,原先项目中用的是SQLite,感觉 *** 作很直接。如果先前有一点数据库和SQL基础的话,写起来会感觉很亲切,都是一些数据库 *** 作的语句。但是当 *** 作变多之后,语句越来越多,就很烦,代码比较多,看起来也会混乱一些。

后来新项目中尝试了CoreData,因为苹果一直在推这个东西。CoreData用起来比直接sql语句方便许多,而且很适合进行代码封装、重构。其实后来在用CoreData的时候,参照RestKit的ObjectMapping和CoreData部分对其进行了少量封装,使得CoreData用起来非常方便。例如:添加一条User数据

User *user = [User object]

user.name = @"example"

[objectStore save]

后来做开发一直都在用CoreData,主要是我觉得用起来太方便了,代码能够精简许多。另外,

App升级之后数据库字段或者表有更改会导致crash,CoreData的版本管理和数据迁移变得非常有用,手动写sql语句 *** 作还是麻烦一些。

CoreData不光能 *** 纵SQLite,CoreData和iCloud的结合也很好,如果有这方面需求的话优先考虑CoreData。

CoreData并不是直接 *** 纵数据库,比如:使用CoreData时不能设置数据库的主键,目前仍需要手动 *** 作。

效率上其实跑程序时感觉不出来,毕竟手机上的数据不能跟网站的数据和访问量相提并论。

总的来说,个人比较喜欢用CoreData,因为自己比较熟悉,使用起来也非常方便。

PS:既然你一直在CoreData,就应该坚持用下去,除非是真的碰到很致命的无法解决问题。中途换掉既有的自己熟悉的东西,费时费力,实际用起来没区别,得不偿失。

Network:

Alamofire:著名的AFNetworking网络基础库Swift版 - Alamofire/Alamofire · GitHub

SwiftyJSON:最为开发者认可的JSON解析类 - SwiftyJSON/SwiftyJSON · GitHub

Storage:

SQLite.swift:简单、轻量,使用上最SQL的SQLite封装库 - stephencelis/SQLite.swift · GitHub

SugarRecord:基于CoreData与REALM的好用封装 - SugarRecord/SugarRecord · GitHub

UI:

SweetAlert:带动画效果d窗封装类 - codestergit/SweetAlert-iOS · GitHub

RAMAnimatedTabBarController:灵动的动画标签栏类库 - Ramotion/animated-tab-bar · GitHub

PNChart-Swift:带动画效果的图表控件库 - kevinzhow/PNChart-Swift · GitHub

LTMorphingLabel:各种文字动画效果 - lexrus/LTMorphingLabel · GitHub

Cartography:用代码解决麻烦的AutoLayout - robb/Cartography · GitHub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10065207.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存