日前,Azure移动服务发布了对HTML应用的支持。至此,移动服务的完整框架已经完全浮出水面,我们可以回顾一下移动服务的完整框架,以及它和微软传统的Web框架之间的关联。
移动服务是微软针对移动开发推出的最新框架,其主要功能是:
- 为移动应用提供云端数据存取支持
- 后台服务全部运行在Windows Azure上,由Azure提供数据存储和数据处理能力
- 使用JSON+HTTP实现客户端和服务端的通信
- 为不同类型的客户端,如Android/Windows Phone/iOS,提供访问代理库。这样,各种移动应用直接调用原生代码API即可访问Azure移动服务,而无需进行数据序列化处理
- 提供网页客户端,网页应用可以使用javascript库访问Azure移动服务
下图是Azure移动服务的简要架构。移动服务的核心是数据库以及提供JSON的Web接口服务。移动服务可以自动把数据库的表暴露为JSON形式的REST API接口,同时,这个接口的内部逻辑还可以通过node.js代码进行定制,比如进行数据校验、数据处理等。客户端可以采用多种形式,如HTML或者各种移动设备的原生代码。Azure移动服务为各种设备和HTML提供了访问代理,客户端应用调用这些代理即可进行数据查询和修改,不需要进行任何网络和协议的处理。从MVC的视角来看,移动服务提供了Model层,而View和control层都在客户端实现。
我们可以回顾下微软传统的一些框架,对比下他们与Azure移动服务的差异:
跟这个框架最类似的,就是Silverlight+RIA框架。Silverlight是微软前几年推出的框架,主要是与Flash竞争,希望提供通用的富客户端方案。该框架也通过Silverlight实现V+C,而把M放在服务端。这个框架与移动服务相比,所有的东西都“重”一些。在客户端需要Silverlight和.net框架,在传输上使用WCF(XML),在服务端使用.NET和RIA,在数据存储上使用Entity framework。这个框架功能十分强大,适合于企业级PC应用的开发
另外一个框架,是.NET Web API/WCF框架。这个框架较少涉及客户端的内容,而是提供REST接口,方便各种客户端工具访问。这个框架是.NET下编写移动应用的主要框架
而最后一个框架,是传统的.NET框架。客户端只提供View的能力,而Model和Control在服务端通过.NET实现。
通过对比,我们不难得出各种场景下的合适框架
框架 |
应用场景 |
开发语言 |
Azure移动服务 |
移动应用快速开发 |
javascript+客户端编程 |
Silverlight+.NET RIA |
PC上富客户端 |
.NET, ASP.NET, Silverlight |
ASP.NET Web API或WCF |
移动应用、Web服务 |
.NET, ASP.NET |
ASP.NET |
传统Web应用 |
.NET, ASP.NET |
针对移动应用的开发,主要有Azure移动服务和ASP.NET WCF两种框架。其中后者需要开发者了解.NET,门槛较高。而Azure移动服务的开发只需要了解javascript和客户端编程,省去了中间厚重的堆栈,不需要了解Web协议,不需要了解数据库编程,连SQL也不需要写。适合快速上手和快速开发。当然,如果服务端的业务逻辑比较复杂,那么Azure移动服务的javacript编程就有些吃力了,还是用ASP.NET比较好
分享到:
相关推荐
Azure离子应用程序一个简单的应用程序,演示如何将离子框架移动应用程序与Windows Azure移动服务集成在一起阅读此博客文章以获取更多信息...先决条件Node.js,科尔多瓦$ npm install -g ionic$ npm install -g ...
基于Windows Azure云计算的移动医疗健康系统.pdf
Windows Azure使用入门 第九课:开发移动应用和通知发送.pdf
长沙高新区创业服务中心微软云暨移动应用孵化平台WindowsAzure可行性验证测试报告.docx
Microsoft Azure移动服务Azure移动服务已被Azure应用服务移动应用取代,并计划从Azure中删除。 我们建议对所有新的移动后端部署使用Azure移动应用程序。 阅读以了解有关此服务即将弃用的更多信息。 了解。 开始使用...
创建Windows Azure移动服务 从Azure通知中心启用推送 从( )设置Apple APNS 通过( )设置Google GCM 从( )设置Microsoft MPNS 使用Apple和Google设置AppBuilder 在app.js中更改Azure MOBILE_SERVICE_URL,...
- ) Windows 应用商店开发者帐户,终身帐户的费用为 19 美元 ( ) 您不需要拥有它,但我建议您获取自上周以来免费提供的 Visual Studio Community Editon ( )入门Microsoft Azure 移动服务: 在 Visual Studio 2013 ...
登录注册WindowsAzure 使用Microsoft Windows Azure后端注册并登录Android应用。 添加了所有类和必要的库来注册用户并将数据保存在azure移动服务表中,以后再通过将用户输入的数据与服务器数据进行比较来允许他登录
虚拟机(VirtualMachines)是WindowsAzure基础设施即服务(IaaS)的重要组成部分,支持Windows和Linux操作系统,并提供了多款模板供用户选择。其特点有(不限于):1.自服务式申请并快速的创建虚拟机2.灵活的镜像...
系统基于Windows Phone智能手机,通过无线网络接入Windows Azure微软云平台,利用SQL Azure进行医疗数据的存储。介绍了系统的整体框架,并分析和阐述了移动终端和云端之间的Web Service通信方式、SQL Azure和...
WindowsAzure已经成为众多IT服务提供商们热议的话题,其中,有的认为只有提供互连网用户服务的应用才适合放在公有云环境内运行。然而,事实上,在当前WindowsAzure环境上,有许多企业也把企业内部的应用放在公有云上...
革命性的ASP.NET Core,开源跨平台的设备端开发,项目介绍和需求分析,构建开发环境,构建实体模型,创建Web网站,创建Web API,在Azure上部署服务,AngularJS和Ionic Framework,使用Cordova开发跨平台移动应用,...
先决条件 要完成本实验中的练习,您将需要以下内容: ... Azure 移动服务 (ZuMo) 通过为你处理“管道”代码,使你可以更轻松地将数据公开为 REST 终结点,以便你可以专注于数据模型和业务逻辑。 只需单击几下,您就
注意:从0.11.0开始,名称空间已从Microsoft.WindowsAzure.Storage.DataMovement更改为Microsoft.Azure.Storage.DataMovement。 特征 斑点 下载/上传/复制Blob。 具有同步复制,服务端异步复制和服务端同步复制的...
Dun and Bradstreet Developer Challenge的iOS应用程序和Windows Phone应用程序条目
Azure移动参与服务已淘汰,并且不再可用。 Azure移动参与Windows演示应用程序 Azure移动参与演示应用程序。 通过Azure移动互动提高应用程序使用率和用户保留率。 收集突出用户行为的实时分析 使用单个仪表板衡量并...
对于希望在Unity游戏/应用中使用Azure应用服务(以前称为移动服务)的Unity开发人员。 什么是新的 请注意,该库的最新更新对名称空间进行了许多更改,随着Mobile Services被App Services取代,一些类名和方法调用也...