Bry*_*ard 4 .net c# architecture java-ee
当我第一次从Java切换到C#时,我对C#的功能印象非常深刻.但是,在我看来,C#还没有以JavaEE的方式提供可靠的基础架构.
每当我尝试将C#的功能集成到可扩展或复杂的体系结构中时,它总是归结为:我如何扭曲它以便它可以成为MVC/MVP?例如,数据绑定给我带来了比节省时间更多的麻烦.
MSDN有许多与架构和模式相关的文档.但是,在大多数情况下,它们是" 教科书 ",并没有解决这些概念与.NET功能的关系.
JavaEE的EJB和Apache的Struts似乎都鼓励MVC架构.与大多数JavaEE一样,他们倾向于强调分离概念和可扩展性,使其成为大型项目的候选者.
Apache这样说:Struts就像"站在一个巨人的肩膀上".我也可以进入.NET的肩膀吗?
我能提出的最好的单线程是:
是否有大型项目中常用的C#架构整形框架?
我无法抗拒这个类比:我觉得.NET是Power Rangers而JavaEE是Megazord ......
免责声明:我通过Java销售给C#.我在C#领导了几个中小型项目,主要是使用MVP分离; 我只是想"填补空白".
.NET并不真正拥有一个可以或必须使用的包罗万象的架构框架.这在很大程度上取决于您正在编写的应用程序类型.
既然你明确询问了MVC/MVP和数据绑定,我想你的一个问题是架构,因为它与UI和关注点分离有关.在Web应用程序和桌面应用程序中处理的方式非常不同.
对于Web应用程序,相对较新的ASP.NET MVC框架将带您走向正确的方向.它可能会更好(我希望v.2会更好),但我已经非常满意了.
对于桌面应用程序,Windows Presentation Foundation为您提供了通过实现MVVM模式将逻辑与UI分离的好机会.
但是,我怀疑你正在寻找比这更具结构性的东西.今天,在基类库中,我们并没有真正拥有这样的东西,但另一方面,有许多开源DI容器可以帮助您构建可组合的大型应用程序.
一些常见的DI容器是:
我不确定这是否有用,因为我不太了解Java以确切了解您正在寻找什么,但我希望您发现它有点有用.
| 归档时间: |
|
| 查看次数: |
773 次 |
| 最近记录: |