Lia*_*amB 9 architecture asp.net-mvc ruby-on-rails
注意:这远不是x上的帖子比x好.高兴不要去那里.
我是一个.Net的人,并且一直都是,我从早期的第2版Betas和之后的每个版本都使用过MVC框架.在过去的几个月里,我一直在搞乱Rails,我对架构的问题似乎在两个平台之间存在巨大差异.(基于社区和SO等网站上的问题)
在.Net MVC中,我们鼓励我们分离关注点,创建单独的项目来处理数据访问,业务逻辑和视图,我们也被告知我们应该在它们访问View等之前将我们的Data对象转换为ViewModels.
在Rails中,事情看起来更简单,我们有一个包含Validation,DataAccess(通过活动记录)和其他逻辑属性的对象,我们只需将其发送到View并显示它.
那么为什么在一个框架中这种方法是可以接受的,另一方面它被认为是错误的,我们最终都会编写更多代码并创建更多文件.
注意:我不是Rails专家,我真的不想比较哪个比x更好,我正在研究2个框架的高级架构,并找出它在一个而不是另一个框架中可接受的内容.
这取决于您正在开发的应用程序类型以及您希望它增长的程度.
对于普通的应用程序,不需要使用不同的视图和域模型复杂化(但您可能希望使用单独的视图模型和实体:http://blog.gauffin.org/2011/07/three-reasons-to-why -you-should-use-view-models /).
对于CRUD应用程序,您不必将数据访问包装在诸如存储库模式之类的抽象中.
但是,如果您希望编写除琐碎或CRUD应用程序以外的任何代码,我建议您这样做.模式和原则可以帮助您开始维护应用程序.您可以获得更小的更好定义的类,并且业务逻辑可以在一个地方而不是在整个应用程序中完成.
我写了一篇关于我为什么使用抽象的小博客文章:http://blog.gauffin.org/2013/01/data-layer-the-right-way/
为什么封装很重要:http://blog.gauffin.org/2012/06/protect-your-data/
归档时间: |
|
查看次数: |
5390 次 |
最近记录: |