现代软件设计思路是数据与界面分离,其本质意思是什么?谁能说说?
我是菜人,我的理解就是不要在窗体中用到数据环境等东西,是这个意思吗?
肯请各位大侠说说。
谢谢了。

解决方案 »

  1.   

    数据与界面分离
    ================
    说的实际上是传说中的三层架构
    数据层:SQL数据库
    业务层:各种各样的类,所有对数据库的操作都在类里面完成
    显示成:界面,界面上的元素都是类的属性的一部分,界面对类进行操作,通过类再对数据库进行操作好处:中间层处理复杂的业务逻辑关系,如果业务流程改变,无须更改数据库或界面,只要更改类的属性或者是方法。对系统的维护将变的十分简单
    缺陷:类的设计将花费很多时间,不如2层结构那么快速开发
      

  2.   

    我个人喜欢把程序分成界面展示层、业务罗基层和数据访问层。界面展示层负责和用户交互,界面层的输入或者查询请求首先告诉业务逻辑层,业务逻辑模块根据分析业务、查找缓存等等操作决定是否访问数据库,访问数据库调用什么存储过程或者直接执行sql语句,然后通知数据访问层。数据访问层建立连接池根据业务层的请求访问数据库,并将结果返回。
    界面展示层的编程人员可以不必考虑业务,仅需要设计方便的界面操作,专注于界面的美化和易操作性甚至把界面搞得花里胡哨的也可以。业务逻辑层的编程人员可以专注于业务逻辑的实现,根据业务的要求向界面人员提供接口。数据层人员专注于创建与数据库无关的接口,比如让数据层同时支持sql server和oracle,但是对与业务逻辑人员来说接口是统一的,业务逻辑人员不必苦恼于不同数据库之间的不同访问方式。C/S结构也差不多,只不过在界面访问和业务逻辑之间加一个通讯层而已。只要各个层次之间的接口设计合理,后期不改动接口修改量相对较小