最通用和最好的应用程序配置管理方法是什么?我想拥有这些属性以便拥有“良好的配置管理”:
- 一个地方的所有可用属性及其默认值的列表。
- 可以由应用程序用户更改的属性列表,也可以在一个地方进行。
- 当我检索特定属性时,它的值将从第二个列表(用户可更改配置)返回,或者如果它不存在,则从第一个列表返回。
到目前为止,我所做的是将第一个列表硬编码为一个对象(更具体为 a dict
),编写.conf
用于ConfigParser
使应用程序用户轻松更改某些属性的文件(第二个列表),并在配置对象以通过其名称检索属性,或者如果它不存在,则引发异常。最后,一个对象负责管理所有的东西(解析文件,引发异常,覆盖属性等)但我想知道,是否有一个内置库或多或少做同样的事情,甚至更好管理配置的方法,它考虑了所有的 KISS、DRY 和其他原则(我并不总是用这种方法成功地做到这一点)?
提前致谢。