日期:2014-05-20  浏览次数:20416 次

关于 程序效率 和 开发难度 你们如何取舍?
我在做系统时常常有这样的苦恼。
比如在做网站开发时。有时候在数据库的表中添加一些附加的记录(这些记录可以加也可以不加的),加上能大大减轻   开发难度,但缺点就是,如果这些记录多了以后,查询效率就比较低了。
请问你们如何思考和解决这个问题呢?

------解决方案--------------------
在尽量使数据库结构不冗余的情况下,适当加些能极大提高编写速度的字段也不是不可
------解决方案--------------------
在关系数据库来实现的mis中,大多数重要的业务查询都要join5、6个表,甚至经常对同一个表要关联2次或更多次,这很正常。

冗余字段可以让查询变快,这个论断是非常简单的,所以越是低级的程序员那里越容易看到。从“什么也不做是最高效的工作”的角度,可以发表很多这方面的论断。因此一些比较入门级的书会比较容易用这类顾头不顾腚的很直观的方法给你一些推论。这类论断明显是仅仅适合小型、逻辑不复杂、没有将来的系统中。

对于复杂的系统,这样做,是让产品的逻辑不可靠,这样的设计越多产品越垃圾。