程序中有一个全局配置是否是合理的应怎样考量

你的问题描述不好,不是一个具体的问题,一般我的思路是针对具体问题的。那么这里就按照我的理解假设来做个回答。首先我认为计算机的存在就是为了解决问题,一切原则以解决问题为先。我理解你说的全局配置是一种配置文件的方式,一般项目中,这个的确是一份全局的,所有需要用到的地方都来读这个配置。只是有的时候用API,有的时候直接用全局变量。这涉及到这个“配置”的实现,有的可能直接就是全局变量,有的可能是配置文件,有的甚至是数据库。但是本质是一样的。这种“配置”几乎在所有项目中都是这么干的。我不知道你说的有人反对是从哪里来的。好,还是回到我强调的原则上,计算机领域有太多什么原则,规则。有些人还喜欢胡说八道。这些不用听,你记得一个原则:解决问题。你的目标就是为了解决问题。只要能解决问题,怎么简单怎么来。如果你的问题就是为了支撑当前产品的,那么就在这个环境下用最简单的方法来搞定。如果你要解决的问题时支撑产品5年之内的演进,那么就要做适当的架构设计。我赞成前面@甘明回答的,让反对的人说出反对的原因。一般在吵架PK的时候,我一般的策略是,谁BB,谁给出原因和解决方案,不然给我闭嘴。
■网友
我不太清楚你这个全局配置是指全局对象还是全局变量。以C++为例简单说一下坏处:1、全局的东西容易暴露在符号表中,容易被人看出设计,容易被攻击;2、全局对象先于main初始化,万一挂在里面你连debug都做不到,因为调试程序一般都把第一个锚点放在main后。好处:1、简单,不管是逻辑上还是使用上都简单啊,简单意味着节省时间,这个收益有时候挺大。个人不排斥使用全局对象,毕竟简单实用节省的是时间这种稀缺资源对不对?只要收益大于风险,就是值得的。


    推荐阅读