求大神给提示下,关于程序构思的问题。
一个计算租赁费、水费、电费的程序。 DAL 提供rent类,包括房屋的基本信息,房屋面积、每平方单价、租赁费到期日期、收费周期、收费日期等。
water类 包括本次超标记录,单价,上次超标记录
electric类 包括本次超标记录,单价,上次超标记录
现在 BLL 层 有个count类,根据传进来的上述对象进行计算。
我得本意是 把rent类 water类 electric类写到一个house类里。然后rent类,water类,electric类只能靠house的一个方法产生或者构造函数产生,而且rent类,water类,electric类下面的属性为只读。
为什么要这么做呢。 主要是防止bll层的开发人员有意或者无意改动这些基础数据, 他们只要考这个只读的数据进行计算就可以。而且他们也能自己new rent()类。只能通过house(int houseId)这样的构造函数产生。
这样似乎可以增加程序的安全性。
请问有必要吗?
而且house类应该怎么写? --------------------编程问答-------------------- 他们只要靠这个只读的数据进行计算就可以。而且他们也不能自己new rent()类。只能通过house(int houseId)这样的构造函数产生。
--------------------编程问答-------------------- 设计上基本不会用到类这种名词,
程序员做需求调研,就是别人的表格统统带回来,
设计师做需求调研,基本上是把客户的所有业务流程走一遍,
然后按照用动词来分析和设计 --------------------编程问答-------------------- 我晕,你说了跟没说一样 --------------------编程问答-------------------- 名词什么不重要,我只是随便起个名。只是说设计的思路 --------------------编程问答-------------------- 如果你的业务逻辑只是计算一下,有什么意思呢?
一个软件注重的是动态建模,而不是搞一个学术论文或者“计算”。这就好像“洗衣机”,如果你弄个图纸、计算一下,没有用的。你的产品关键地是处理洗衣服过程,而不是搞计算。看你的所谓“类型”分析,只是静态搞概念,没有针对应用过程去真正分析。 --------------------编程问答--------------------
你不要小看这个计算一下。有过前车之鉴的是我去过一个公司找上海一个公司做了一个物业收费软件,就是这么简单的计算。用了几年竟然没能用起来。这中间牵涉到的细节很多。你做做就知道了。
另外,我只是就这个实例和大家探讨下架构的问题。 --------------------编程问答-------------------- 另外我觉得这是一个三层架构比较典型的例子。
DAL 只负责提供需求基础数据
然后BLL负责计算。
我所想的是。三层架构带来的一点好处是不是, 对于BLL人员来说可以完全接触不到数据库,这样可以保证系统的安全。 就比如淘宝,如果把数据库开放给人以一个BLL的开发人员,那将多可怕? 更何况淘宝会开放一些API,最终面对的用户群体是广大的店家开发人员。所以,淘宝不可能吧数据库展现给他们,能给他们的只是对象。
--------------------编程问答--------------------
补充:.NET技术 , ASP.NET