发信人: ninja_xena()
整理人: hnyjchuhong(2002-04-19 16:57:27), 站内信件
|
现在各大小公司号称的应用“平台”真是不少。仿佛有了“平台”就可以达到以不变(平台)应万变(需求)的目的了。很多同志每每在完成一个系统后,面对许多需求变更,心里就自然的产生把“系统”做成“平台”来想法吧!
不过在我看来,平台之所以为平台,就是它只是个框架,并无任何实际的效用,而它可以“方便”的增加功能。而“框架”的一个作用是让后期追加配置功能容易,另一个作用却是限制了功能的范围。而这样的平台,如果模块的功能限制和模块添加修改的难度平衡不好的话,这样的平台就失去了存在的价值了。
系统可以简单看成功能的实现。虽然概念上看并无“平台”所具有的诱人的“可扩展”性,但并不代表无扩展性。相反一个时时以需求变更为设计目的的系统,其扩展性是十分优秀的。如果要在“平台”上写数十行XML代码才能实现的功能,用源代码两行就能很好的扩展出来,我们是否应该重新考虑“平台”的实用性呢?
所以我觉得把系统做成平台的时候必须首先考虑几点:
1,系统的功能的有多少?功能可归类、可配置的比例有多少,这是是否适合做成平台的内因。很难把一个功能很庞杂的、重用逻辑低的系统构造成一个平台,当然这不是绝对的,只是这样的系统要做成平台不好做而已。
2,系统的功能的需求变更程度?有多少不同的客户会需要这套系统?他们有些什么希奇古怪的想法?这是外因。不要妄图把一套系统推销给全世界的人,就算有MS OFFICE这样优秀的办公软件,但还是有很多的OA系统在不同的公司里运行着。如果你的客户相对固定,做成简单而稳固的应用程序会很受欢迎。而客户的需求方向变更太大的时候,你最后很可能发现你设计的平台是一个类似于J2EE那样的应用体系。
3,费用。这是个要命的问题,平台绝对比应用系统耗费更多的钱和时间,也带来更大的开发风险。
4,我够资格做“平台”吗?在问题域还没有很多的经验的时候,异想天开的想一劳永逸是很危险的,我就犯过这类毛病,最后发现自己设计的平台其实只是给自己增加麻烦。
面对各种各样的“平台”和心里时常冒起的宏伟的打造“平台”的想法的时候,冷静一下,看看这个东西是不是会成为一个只是增添烦恼的绊脚石。 |
|