gitalk
gitalk copied to clipboard
一些关于时间和定时任务的库
一些关于时间和定时任务的库
避免重复发明轮子。如果有一些好用的库,我们就直接使用就好了,没必要做一些重复的工作,如果这些库不能满足需求,不妨提交pull request或者clone 它们,提升它们,优化它们,当前前提是你得知道它们。 这篇文章给大家介绍一些关于时间和类似linux cron功能
感谢大佬推荐,我是 golang-module/carbon 的作者 gouguoyin。关于时间旅行的细粒度方法,最初我也是有考虑使用一个方法,采用枚举类型来区分,如
carbon.Parse("2020-02-29 13:14:15").Add(3, carbon.Century),但是这些方法可能存在不同数量的参数,如
carbon.Parse("2020-02-29 13:14:15").AddMonths(3)
和
carbon.Parse("2020-02-29 13:14:15").AddMonthsNoOverflow(3)
如果改成一个方法,就需要写成类似下面这样
carbon.Parse("2020-02-29 13:14:15").Add(3, carbon.Month, "overflow")
而其他方法是不需要考虑是否跨月的情况,无需第三个参数。
此外如果这个统一成一个方法,那么其他的细粒度方法为了保持风格统一也需要统一成一个方法,如
CreateFromXXX 系列、DiffInXXX 系列、SetXXX系列,这样改动过大,而且耦合度过高。