03 2005 档案

摘要:失眠的夜里,偶然读到一段话,据说是管理学中的“苛希纳定律”(我对管理学是外行,不知道是否管理学中真的有这么一个定律):如果实际管理人员比最佳人数多两倍,工作时间就要多两倍,工作成本就要多四倍;如果实际管理人员比最佳人数多3倍,工作时间就要多3倍,工作成本就要多6倍。我没有什么管理工作的经验,不过这个定律似乎同样适用于软件设计。当过度设计带来额外的复杂度时,它的负面效应似乎不是线性增长,而是成倍数的向上翻。Bug,额外的维护成本,升级和改造都成了噩梦。我个人的切身体会,就是有一段时间热衷于复杂的设计,用各种模式和多层架构来实现功能。诚然,这样的设计带来了相当大的弹性,但是过度复杂的程序难以调试和 阅读全文
posted @ 2005-03-21 05:36 计算机技术 阅读(192) 评论(0) 推荐(0)
摘要:(附前文)习惯上我们在应用系统中一直使用两值逻辑:非True即False。两值逻辑的运算体系已经相当成熟,与、或、非以及衍生的异或、与非等等。但是在实际应用中,我们会有机会遇到三值逻辑。三值逻辑通常包含可选的True、False、NULL。如何在完备的两值逻辑运算体系中加入这个NULL,使之满足我们的需要,并且不会引发逻辑矛盾,就是我们要在这里讨论的。NULL参与逻辑运算时,实际上存在着不同的算法。按NULL值在运算中的“优先级”分为三种。通常我们在数据库中使用的三值逻辑,遵循NULL最优的原则。有NULL值参与二值运算时,返回结果为NULL,其它与二值逻辑相同。这一原则基于关系型数据库将NU 阅读全文
posted @ 2005-03-20 03:00 计算机技术 阅读(219) 评论(0) 推荐(0)