一种新的基于Windows Mobile平台的移动开发N层架构(第二部分)
2009-07-26 12:37
489 查看
继续开始于一种新的移动N层架构(第一部分)的这一系列,我会更多地谈论现代移动多层架构里的变化。我们可以看到,最重要的变化是发生在两个层次,第一是更紧密的业务逻辑和数据之间的联系。
以前,我们在逻辑和数据之间两个较低的层次上有一个清晰的分隔。思想是,数据服务可以被多个业务逻辑部分用来处理基本的CRUD(Create, Read, Update and Delete)操作。这从2002年就体现在.NET应用体系结构中,你可以看到在左侧图中,业务逻辑和数据访问被分为典型三层架构中较低的两层。然而,问题是,没有逻辑的数据几乎是无用的,即使存在逻辑(在各个业务组件)它和数据的自然关系也没有很好的体现出来。
第二个变化在于服务器与客户交流信息的方式(或更一般的,两个系统或对端交流信息的方式) ,这将成为这一系列中下一部分关注的焦点。
如果我们看一下技术,如LINQ 特别是LINQ2SQL (LINQ到SQL),传统的逻辑和数据之间的分离是被鼓励的。在右图中您可以看到这两个较低层发生的变化。观察者指出,业务实体正在向数据绑定层下移(它们归属的地方) ,但更重要的是,实际上是两层是在一起移动的。通过一个LINQ2SQL ,业务逻辑可以在相同的数据上下文(ORM)类(通过定义部分类)中实现 。我愿意称呼这些合并后的实体为域组件,因为它们同时界定和处理了一个具体的业务领域里的数据和逻辑。因此,服务接口(实现框架)实际上将和一些域组件一起工作提供给客户相应的功能。面临的挑战是如何把功能(逻辑+数据)在各领域间进行推广,在多功能性和可复用性间达到完美的权衡。更大,更灵活,更小的,更可重用的。通用的消息很可能使他们保持小而清晰。
在接下来的帖子中,我将更多的讨论关于现代移动架构上变化的想法,当然会有一些代码示例,以在实践中阐明理论。
以前,我们在逻辑和数据之间两个较低的层次上有一个清晰的分隔。思想是,数据服务可以被多个业务逻辑部分用来处理基本的CRUD(Create, Read, Update and Delete)操作。这从2002年就体现在.NET应用体系结构中,你可以看到在左侧图中,业务逻辑和数据访问被分为典型三层架构中较低的两层。然而,问题是,没有逻辑的数据几乎是无用的,即使存在逻辑(在各个业务组件)它和数据的自然关系也没有很好的体现出来。
第二个变化在于服务器与客户交流信息的方式(或更一般的,两个系统或对端交流信息的方式) ,这将成为这一系列中下一部分关注的焦点。
如果我们看一下技术,如LINQ 特别是LINQ2SQL (LINQ到SQL),传统的逻辑和数据之间的分离是被鼓励的。在右图中您可以看到这两个较低层发生的变化。观察者指出,业务实体正在向数据绑定层下移(它们归属的地方) ,但更重要的是,实际上是两层是在一起移动的。通过一个LINQ2SQL ,业务逻辑可以在相同的数据上下文(ORM)类(通过定义部分类)中实现 。我愿意称呼这些合并后的实体为域组件,因为它们同时界定和处理了一个具体的业务领域里的数据和逻辑。因此,服务接口(实现框架)实际上将和一些域组件一起工作提供给客户相应的功能。面临的挑战是如何把功能(逻辑+数据)在各领域间进行推广,在多功能性和可复用性间达到完美的权衡。更大,更灵活,更小的,更可重用的。通用的消息很可能使他们保持小而清晰。
在接下来的帖子中,我将更多的讨论关于现代移动架构上变化的想法,当然会有一些代码示例,以在实践中阐明理论。
相关文章推荐
- 一种新的基于Windows Mobile平台的移动开发N层架构(第四部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第八部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第十部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第六部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第三部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第五部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第七部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第九部分)
- 一种新的基于Windows Mobile平台的移动开发N层架构(第一部分)
- iOS开发移动平台架构设计
- RCP(Rich Client Platform)富客户端平台是基于Eclipse插件开发的一种应用
- iOS开发那些事-移动平台架构设计
- iOS开发那些事-移动平台架构设计
- CAD平台开发和基于此平台的二次开发(数据库部分)
- 小飞鱼通达商务平台课程 OA开发程序基础课 3月11日 PHP第二部分课程签到及作业
- BAE WebApp开发 [0]——基于移动BAE平台开发的WebApp的演示
- iOS开发那些事-移动平台架构设计
- 基于DotNet构件技术的企业级敏捷软件开发平台 AgileEAS.NET - 系统架构
- 架构师方向:基于.net平台remoting、DB2技术的大型分布式HIS系统架构及开发
- 基于.Net(C#开发)平台的三层框架架构软件的设计与实现