config、option、setting辨析

作为一个编程新手,在软件目录中常常会看到这几个词,尤其 config 、 setting 翻译成中文区别不是很大,总让人有点区分不了他们的使用场景。在知乎上看到了关于这个问题的讨论觉得受益挺大的,自己总结了一下各位大佬的回答

问题链接:

config、option、setting这三者在程序世界里是什么区别?

首先是轮子哥的神回答:

Configure some options in the settings.

作者:vczh
链接:https://www.zhihu.com/question/39827177/answer/83301475
来源:知乎

另一位答主解释的也很清楚了。

从字面意义来说Config和Setting有点类似。
Config一般是配置,Setting一般是设置。
其实差不了多少。

但硬要区分的话,Config更容易联想为给开发人员使用的,用来避免一些Hard Code的可参数化的设定。
Setting更偏向于使用者或者运维人员使用的设定。比如设置一个端口号,IP地址类似的。


而Option是选项的意思。比如我们设置Socket的时候可以选同步或者异步的模式。


如何管理?
比如 Core里面的Sample就不错。你可以指定多个Settings例如
appsetting.json, appsetting.Development.json
appsettings.Prodution.json。可以很好的解决版本库的管理问题。


在使用上我喜欢定义一个config类。然后将配置文件在系统启动的时候或者第一次使用它的时候加载到(反序列化)到这个类的对象。用起来就很方便啦。



作者:苏佳
链接:https://www.zhihu.com/question/39827177/answer/83301475
来源:知乎

原文地址:https://www.cnblogs.com/huang-yc/p/9750211.html