Zepo / GYDataCenter

An alternative to Core Data for people who like using SQLite directly.
MIT License
842 stars 132 forks source link

提几个建议和问题 #17

Open lyandy opened 7 years ago

lyandy commented 7 years ago

建议:

  1. GYDataCenter如果要使用就必须继承自GYModelObjcet,如果我这个类也需要继承自其他类怎么办呢? 建议改成Category非侵入式的设计。

  2. GYDataCenter中的类方法和对象方法名称建议添加前缀,比如 gy_。

  3. FMDatabaseQueue+Async.m 分类Category中出现了和FMDatabaseQueue中同名的database方法,建议通过添加前缀的方式修改。

问题:

  1. 在 GYModelObject.m 文件中的 #pragma mark - Dynamic Accessers 部分是做什么的,还用到了动态增加方法,麻烦解释一下
Zepo commented 7 years ago
  1. GYModelObject 里实现了一些方法,比如 +propertyTypes,对计算结果做了缓存,有助于提高性能,目前还没有找到其他的方法替代而不牺牲性能。因此只能做为基类。
  2. 可以考虑
  3. 这个确实应该改

问题1: 为了实现类似 CoreData 的 faulting 机制,既对于关系型属性按需初始化。

ccnyou commented 7 years ago

FMDatabaseQueue+Async.m 分类Category中出现了和FMDatabaseQueue中同名的database方法,建议通过添加前缀的方式修改。

这个能否在 +load 中通过 method swizzling 的方式替换FMDatabaseQueue同名方法?这样就不需要留着这个警告了,碍眼。