A-A+

[开源APP推荐] LunarCore – 小历(iOS & OS X)的农历核心部分

2016年05月22日 开源APP 暂无评论 阅读 1,973 views 次

LunarCore - 小历(iOS & OS X)的农历核心部分

 

小历(iOS & OS X)的农历核心部分。

 

何为小历
小历是一个简洁的农历 app,目前支持 iOS & OS X 两端,iOS 端多次被 App Store 官方推荐。
前世今生
LunarCore 最早来自于一个 JavaScript 编写的农历库:LunarCalendar。

出于性能原因,我将其用 Objective-C 重写,同时改进了原版里面一些数据不准确的问题。LunarCore 现已工作在小历上面,在未来可能会使用 Swift 重写。

为了更灵活的抽离,LunarCore 不包含任何 UI 实现,所有的数据均以 Dictionary 的形式透出。

 

温馨提示
计算农历的耗时较长(主要是节气计算,如果你不需要也可以直接去掉),如果你在 UI 上面每次日历变化都计算一次,显然是不划算的做法。我个人的建议是做内存和文件缓存,小历的缓存策略如下(以 2016年5月 日历为例):

从内存中读取 2016.5 的日历
没有读到的话从文件中读取
还是没有读到的话构建 2016.5 的日历
构建日历后缓存到文件和内存
在子线程生成上个月和下个月的日历

 

联系方式
微博 @StackOverflowError
邮件 log.e@qq.com

 

AppStore: https://itunes.apple.com/app/id1031088612

 

Githubhttps://github.com/cyanzhong/LunarCore

 

e1 e2

给我留言

Copyright © iOSCodeHub 保留所有权利.  

用户登录 ⁄ 注册

分享到: