论坛首页 Java企业应用论坛

关于软件设计中配置库配置表的使用探讨

浏览 6612 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-10-13  
写这个标题可能不大能表达我的意思。发这个帖子一是想说一些经验,更多的是有些迷惑,想听听大家的意见。下面言归正传。我们做的是一个行业软件,用户很大爷,需求几分钟一边,根本没有谈的可能。基于这样的一个实际情况,我们领导从很多年前就制定了大量使用配置表的一个基本原则,就是把所有可能变化的东西都写到数据库中,如果用户需求变化了就去改这个配置表。举个极端的例子,就是把CSS样式都写到数据库里面,用户如果要红色,那就改库。其实这样做的一个原因也是因为我们的领导搞数据库出身,所以想把一切都存到库里。我们的表格编辑,网页风格,布局等等都存储在数据库中。
下面我想说说我自己对这种设计的理解。
优点:灵活性高,用一个友好的数据库修改工具或者是自己做一个数据库修改工具,基本上有点计算机基础的人都可以修改整个应用。
缺点:依赖性太强,所有东西都在库里,程序也很复杂,不易维护。为了配置而开发配置工具往往很愚蠢。举个例子,网页上有些按钮要排序,这个也要搞个页面配置。那么好,配置界面做出来了,排序的序号用下拉列表显示,但是这个下拉列表里面有哪些数字呢,就是1-7还是1-10,这个又做了一个界面,专门填写这个数字,是不是很麻烦也很傻。
先说这么多,也请大家给些评论。另外本人不是什么大牛,刚刚搞这块,没什么经验,因此也很迷茫。
   发表时间:2011-10-13  
看你怎么设计配置工具了,好的配置工具就是一个合格得ide
比方说ui的中button group 按钮排序,虽然内部是一个序号来表示顺序,但工具上使用可以是ctrl+上方向键,ctrl+下方向键来改变顺序

0 请登录后投票
   发表时间:2011-10-13  
jjx 写道
看你怎么设计配置工具了,好的配置工具就是一个合格得ide
比方说ui的中button group 按钮排序,虽然内部是一个序号来表示顺序,但工具上使用可以是ctrl+上方向键,ctrl+下方向键来改变顺序


谢谢回复,我是想探讨这个思路,真的有必要把这些东西都做到配置工具中吗。你说的ide据我了解的有很多,国内很多厂家也在做这些工具,但也不会是把类似CSS样式的东西都写到配置库中吧。呵呵。
0 请登录后投票
   发表时间:2011-10-13   最后修改:2011-10-13
mysnow 写道
写这个标题可能不大能表达我的意思。发这个帖子一是想说一些经验,更多的是有些迷惑,想听听大家的意见。下面言归正传。我们做的是一个行业软件,用户很大爷,需求几分钟一边,根本没有谈的可能。基于这样的一个实际情况,我们领导从很多年前就制定了大量使用配置表的一个基本原则,就是把所有可能变化的东西都写到数据库中,如果用户需求变化了就去改这个配置表。举个极端的例子,就是把CSS样式都写到数据库里面,用户如果要红色,那就改库。其实这样做的一个原因也是因为我们的领导搞数据库出身,所以想把一切都存到库里。我们的表格编辑,网页风格,布局等等都存储在数据库中。
下面我想说说我自己对这种设计的理解。
优点:灵活性高,用一个友好的数据库修改工具或者是自己做一个数据库修改工具,基本上有点计算机基础的人都可以修改整个应用。
缺点:依赖性太强,所有东西都在库里,程序也很复杂,不易维护。为了配置而开发配置工具往往很愚蠢。举个例子,网页上有些按钮要排序,这个也要搞个页面配置。那么好,配置界面做出来了,排序的序号用下拉列表显示,但是这个下拉列表里面有哪些数字呢,就是1-7还是1-10,这个又做了一个界面,专门填写这个数字,是不是很麻烦也很傻。
先说这么多,也请大家给些评论。另外本人不是什么大牛,刚刚搞这块,没什么经验,因此也很迷茫。

页面还是CMS方便一些

别从数据库角度去看
从CMS角度去看会快乐很多

protal之类的也会把样式之类的东西存在数据库里
不过个人认为这样作很变态

PS:自定义CMS是很多大网站的核心,SINA SOHU 都有自己的CMS
0 请登录后投票
   发表时间:2011-10-13  
没有什么不可以啊

配置可以是业务的,也可以是外观的

至于配置数据库,我的经验是要同业务库分开,不要混到一个数据库中,最好使用object db ,如db4o

甚至代码都可以放到数据库中,动态语言如此,如果代码能stream load执行,静态语言也行,ms 的dynamics ax就是用一个特有的数据格式存储所有的东西,包括代码

0 请登录后投票
   发表时间:2011-10-13  
jjx 写道
没有什么不可以啊

配置可以是业务的,也可以是外观的

至于配置数据库,我的经验是要同业务库分开,不要混到一个数据库中,最好使用object db ,如db4o

甚至代码都可以放到数据库中,动态语言如此,如果代码能stream load执行,静态语言也行,ms 的dynamics ax就是用一个特有的数据格式存储所有的东西,包括代码


你说到我们领导心眼里了,代码都恨不得写到库里面,哈哈!
0 请登录后投票
   发表时间:2011-10-13  
抛出异常的爱 写道
mysnow 写道
写这个标题可能不大能表达我的意思。发这个帖子一是想说一些经验,更多的是有些迷惑,想听听大家的意见。下面言归正传。我们做的是一个行业软件,用户很大爷,需求几分钟一边,根本没有谈的可能。基于这样的一个实际情况,我们领导从很多年前就制定了大量使用配置表的一个基本原则,就是把所有可能变化的东西都写到数据库中,如果用户需求变化了就去改这个配置表。举个极端的例子,就是把CSS样式都写到数据库里面,用户如果要红色,那就改库。其实这样做的一个原因也是因为我们的领导搞数据库出身,所以想把一切都存到库里。我们的表格编辑,网页风格,布局等等都存储在数据库中。
下面我想说说我自己对这种设计的理解。
优点:灵活性高,用一个友好的数据库修改工具或者是自己做一个数据库修改工具,基本上有点计算机基础的人都可以修改整个应用。
缺点:依赖性太强,所有东西都在库里,程序也很复杂,不易维护。为了配置而开发配置工具往往很愚蠢。举个例子,网页上有些按钮要排序,这个也要搞个页面配置。那么好,配置界面做出来了,排序的序号用下拉列表显示,但是这个下拉列表里面有哪些数字呢,就是1-7还是1-10,这个又做了一个界面,专门填写这个数字,是不是很麻烦也很傻。
先说这么多,也请大家给些评论。另外本人不是什么大牛,刚刚搞这块,没什么经验,因此也很迷茫。

页面还是CMS方便一些

别从数据库角度去看
从CMS角度去看会快乐很多

protal之类的也会把样式之类的东西存在数据库里
不过个人认为这样作很变态

PS:自定义CMS是很多大网站的核心,SINA SOHU 都有自己的CMS

我们也想到过CMS,只是限于能力和领导的理解水平,自己搞了个所谓CMS,有点太随心所欲了。
0 请登录后投票
   发表时间:2011-10-13  
在中国用户永远是大爷,忍了吧
0 请登录后投票
   发表时间:2011-10-13  
chansman 写道
在中国用户永远是大爷,忍了吧

用户可以忍,忍不了的是不懂技术的领导。哎。。。
0 请登录后投票
   发表时间:2011-10-13  
变态的做法
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics