新的开发框架的猜想
【IT168技术文档】
MVC模式想必大家都了如指掌了,对于经典的3层结构也是最具备健壮性的软件开发架构。分成这3个层次有助于各个角色合理分工。本文首先谈谈快速原型法的开发流程,然后对于全面使用XML和关系数据库组合开发的一种框架做一个猜想。
所谓快速原型,强调的快速是指迭代的速度。在分析需求阶段,架构师就应该从需求中抽象出作出来的系统大概有哪些页面,各个页面之间的联系是怎样;之后就应该用最快的速度将页面做出来,不管是用图纸,用Dreamware,强调的只是快,可以适当的当UI设计师来做做界面设计了,只是初步的;然后将各个页面联系起来,改填链接的地方要填,有的也可能要在后台代码中写一些类似(Server.Transfer(..aspx))的代码。做完后,找到我们的客户,问他们这样行不行,需要有哪些改进,得到客户的一些意见后,回到工作室,对界面做些调整,进行第二次迭代,如此反覆3次左右之后,需求大概定下了百分之八十,这样就可以完全让UI设计师设计页面了。同时开始设计数据库。这个时候,架构师要把每个页面的操作哪些表告诉DBA,让他去写数据访问层,写数据访问层是整个开发流程中最有技术含量的地方,包括了全面的面向对象思想和设计原则,可以说,一个完美的数据访问层可以给项目的成功带来巨大的砝码。当然,数据访问层的实现,由于现在技术和设计思想的发展,已经流行了许多开发工具,它让我们不需要自己写代码,工具为我们自动生成,如hibernate,nhibernate,codesmith,都是十分优秀的数据层开发组件。当数据访问层开发完毕后,之后的代码就简单了,就是围绕控件写一写数据绑定。再后来,就到了测试阶段了,维护的难易程度就看我们写的数据层怎么样哈。
现在,我觉得关于技术性的东西,不谈到XML简直无法见人。对于分布式应用开发,XML独立于任何系统,任何数据库。如果我们不做数据层,或者说数据层不是传统的ORM, 而是将数据写入XML数据文件,之后的数据调用全部靠System.Xml里提供的方法来操作,每操作一次,把数据从关系数据库转变为XML数据,然后读取每个节点,取出或者修改所需节点的数据,然后把XML数据重新写入DataSet,再保存到关系数据库,最后程序自动实现在服务器上删除XML。操作完成!
不知道这样是否有可行性,当然,XML与关系数据库的交互不一定要通过DataSet,还可以有很多种方式,比如我么可以用DataReader从关系数据库中把数据写入XML,这样比较节省内存资源。
一般的应用程序用这种架构可能不太具备可行性,但是如果把这种方式放入到需要使用多种数据库的系统种去,是不是可以有比较好的效率呢?还不确定。