软件分层的不足之处? 一般情况下,程序大多是分三层. 基本每个人都能说出出层的好处.但分层除了复杂度增加外还有什么缺点呢? 又如何处理? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 分层是一个软件架构设计范围的问题,架构设计的概念就有“决策派”一说,认为设计的过程就是一系列决策的过程,如RUP中对“软件架构”的定义分层不分层,如何分层显然是取决于所设计的系统实际情形。相较于不分层,分层可能会在性能上牺牲一些(不绝对,要具体问题具体分析),但得到的可能更多,如结构良好的系统可维护性要大大强于结构零乱的系统 虽然理论上说分层会影响性能,但是现在分层框架,例如ssh 都用了很好提高性能的策略,反而性能会更高。例如:spring 可以保持对象只创建一次 避免了重复创建对象的开销,也节省内存 hibernete有一级缓存和二级缓存所以说,性能不是问题 SVN源代码管理服务提供商 http://www.kingtoo.com/svn.asp 上海京拓科技 分层设计为的是应对以后的需求、平台变化,比如,分出DAO层后,如果要把数据库从MS SQL 迁移到 Oracle 时,只需要按DAO实现一套 Oracle 数据库操作实现,软件系统前面的层不会应为你改底层数据库支持平台而改动程序,这就是分层、接口的好处,当然这种好处的代价就是为实现这种功能要比不分层要多费一些资源,看你项目的需要了,不能为了分层而分层找到必要的平衡点很重要 执行/通信效率肯定会有一定的损失,但是人们总能找到一些方法来弥补,让它尽量维持在大家能接受的范围。或许以后有更好的model,但是目前来说,分层是基本的架构设计方法之一。 看着感觉像是在讨论linux与windows的好坏一般,其实我以为就是得看实际的应用环境的。 呵呵,这就是耦合的确定啊, 楼主应该学学MVC了 三层指的就是MVC,而且确实有这个缺点的. 新手,我想在三层结构的客户端录入数据要怎么做呀,在线等!!!!!!!!!!望大家帮忙!!!!解决就结贴!! 如何清空DateTime控件! 如何往TRichEdit插入图片 如果把"网站名"和"网址"添加ie收藏夹里去了?例子如下 字符检测的问题! 请问有没有可以*** 免费拨打国际长途的软件?*** ado的刷新问题请高手指教???在线等待? 打印机兼容问题。 uniGUI安装问题,求教 关于数组的问题!(对C,Pascal熟悉的请进!高手请进!UP有分) :) 问个webservice,怎样设计一个插入数据库的的webservice,上传文件吗? checklistbox控件疑问
分层不分层,如何分层显然是取决于所设计的系统实际情形。相较于不分层,分层可能会在性能上牺牲一些(不绝对,要具体问题具体分析),但得到的可能更多,如结构良好的系统可维护性要大大强于结构零乱的系统
例如:spring 可以保持对象只创建一次 避免了重复创建对象的开销,也节省内存
hibernete有一级缓存和二级缓存
所以说,性能不是问题
找到必要的平衡点很重要
呵呵,这就是耦合的确定啊, 楼主应该学学MVC了