处理应用程序配置的最佳做法是什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了处理应用程序配置的最佳做法是什么?相关的知识,希望对你有一定的参考价值。

我会在我的应用程序的上下文中说出这个问题,但我认为它的配置通常有更广泛的范围。 我的应用程序允许公司跟踪其员工的缺勤和假期。 其中一个好处是,它将根据雇主设定的规则自动增加一个人的假期权利。 目的是让公司选择:

A)每年自动将员工的权利增加一定天数,例如每年1月1日,假期权利增加1天; 要么

B)员工的权利根据服务年限增加,例如,在2年就业后,权利增加2天

实现此功能的最佳方法是什么? 第一个选项实现起来相当简单,因为我跟踪每个休假年的开始/结束日期,每个员工的增量可以存储为整数。

我想我正在寻找存储所选方法的最佳实践解决方案; 如何以可扩展的格式存储相关选项和所有选项,以便稍后添加更多方法。

我正在使用Ruby on Rails,但问题可能与其他语言有关。

谢谢

知更鸟

答案

那么:将余额存储在Employee中。 员工属于公司。 到时候,用类似的东西设置天平

self.company.set_balance(self.balance)

因此,您的员工评估员会对所有员工进行管理,并要求公司重新计算其余额。

如果它是一个全局策略,那么您不需要告诉公司员工是谁,但如果您需要特殊情况,您可以将Employee传递给set_balance方法,以便它可以获得有关重新计算员工的更多信息。

至于Compay关于如何增加日期的策略,我会把它放在一个模型中,以限制策略改变时所需的代码更改。

如果这是一个简单的规则,也许只需将其保存在键/值对中:

“holiday_entitlement”/“flat”或“holiday_entitlement”/“服务年限”

我不会保留数据库中的值(1或2),以避免聪明的员工入侵数据库并在其中放置“有利”值:)

以上是关于处理应用程序配置的最佳做法是什么?的主要内容,如果未能解决你的问题,请参考以下文章

在 R 中处理时间的最佳做法是啥?

处理中途断开连接的控制器的最佳做法是啥?

Service Fabric 未处理的异常和最佳做法

运行在Google应用引擎中安排的应用的最佳做法是什么?

使用UIStoryboards时的最佳做法是什么?

什么是对的CoffeeScript + NPM的最佳做法?