zoukankan
html css js c++ java
codebehind 不足之处
大家都知道:ASP.NET通过code-behind 技术立刻带来了表现层和业务逻辑的分离。虽然微软的目的是好的,而且对一般的应用程序也有较好的表现,但是在开发企业级WEB应用程序的时候,code-behind 在很多方面都还比较欠缺: 1.code-behind 带来了表现层、业务逻辑、数据库访问层代码的混合。这是因为code-behind常常扮演事件处理器(event handler)、工作流控制器(a workflow controller)、表现层和业务逻辑层的中介者(mediator )、表现层和数据访问层的中介者(mediator ).赋予code-behind 这么多职责往往会带来难以管理的代码。在企业级应用的开发中,好的设计必须遵循一个原则:在各层之间保持适当的分离,尽可能的保持code-behind 的职责单一(keep the code-behind as clean as possible)。用Model-View-Presenter模式,我们将看到code-behind职责非常的单一化,并且对表现层的细节严格管理(kept strictly to managing presentation details.)
2.code-behind 模式的另一个缺点是,如果不利用helper/utility 之类的类重复的代码抽离出来,在code-behind页间将很难对表现层逻辑进行重用。显然,这也是一个妥善的解决方案。但是这又常常导致低内聚的类,就象ASP中包含很多其他的对象一样。正确的设计,每个类都应该是高内聚、有单一的职责---如果把一个类命名为ContainsDuplicatePresentationCodeBetweenThisAndThat.cs ,就不合格了。
3.由于code-behind页是和表现层页(aspx)紧密绑定的,所以几乎就很难进行单元测试。虽然也可以选择如:NUnitAsp 之类的产品进行测试。但是相当的耗时,影响单元测试的性能---单元测试应该是很简单快速的。
查看全文
相关阅读:
fused multiply and add
gcc优化选项解析
gcc的搜索路径,头文件和库
使用-Wl直接向ld传递参数
ldd LD_TRACE_LOADED_OBJECTS
linux下库的使用
在RedHat 5下安装Oracle 10g详解(转)
Centos下安装X Window+GNOME Desktop+FreeNX
oracle exp direct 执行机制
详解Oracle的unlimited tablespace系统权限
原文地址:https://www.cnblogs.com/RuiLei/p/871690.html
最新文章
IOS控件:分歧解决其(UILabel 和 IBAction)
IOS控件:长度单位换算(UITextField,IBAction,委托事件touchesBegan)
斯坦福大学公开课 机器学习
斯坦福大学公开课 视觉识别卷积神经网络
Matlab和Python用于深度学习应用研究哪个好?
维纳滤波和卡尔曼滤波用于图像去噪
py_initialize:C调Python出错 是初始化错误?
三维GIS
HTML5拓扑3D机房,电力工控Web SCADA
TensorFlow中文手册
热门文章
博士论文
TensorFlow中文教程
信息网址
计算机操作基础
cmd 命令总结
Eclipse 基础操作与设置
c++容器
什么是sibling and tail recursive calls
c++ vector
frame pointer及其用途
Copyright © 2011-2022 走看看