王涛:你必须知道的Windows Phone

原创
企业动态 移动开发
熟悉.NET的朋友一定听说过《你必须知道的.NET》这本书,这本书的作者王涛先生专注于.NET底层架构和.NET平台企业级应用,长期投入于互联网产品开发、微软云计算平台、分布式系统和企业级系统架构的研究与实践,连续三届被评为微软最有价值专家。最近,王涛的履历表上又多了两个新的身份:Windows Phone开发者和移动互联网创业者。

  熟悉.NET的朋友一定听说过《你必须知道的.NET》这本书,这本书的作者王涛先生专注于.NET底层架构和.NET平台企业级应用,长期投入于互联网产品开发、微软云计算平台、分布式系统和企业级系统架构的研究与实践,连续三届被评为微软最有价值专家。最近,王涛的履历表上又多了两个新的身份:Windows Phone开发者和移动互联网创业者。

 

[[51728]] 

(“海纳”开发者、微软MVP 王涛)

  创业:移动互联网试错成本低

  在回答为何选择移动互联网和Windows Phone作为创业方向的时候,王涛向51CTO记者表示,由于中国手机用户数远远高于PC用户,未来无论是从用户群体还是移动业务上,移动互联网产业都会有一个大的发展,而且“创业要顺应潮流”,目前移动互联网风头正劲,“抓住机会有可能做出一些事情来”。确立了这一方向后,作为一个.NET 开发者,选择将Windows Phone切入点则顺理成章。

  今年8月份,王涛和几个朋友离职创业,开始做他们的第一款Windows Phone产品“海纳”。最初的设想是做一款个性化阅读类的应用,因为“随着web2.0的概念出来后,人们获取信息的方式变成推荐机制,不是我去找信息,而是信息找我”。但是,经过一段时间的研发后,他们发现,对于只有五六个人的“海纳”团队来说,要应付海量的内容有些吃力,于是他们及时做了调整,将个性化阅读改为个性化应用推荐。两款产品后端的推荐机制基本是相似的,所以转型并没有带来很大困难。目前,定位于个性化应用推荐的“海纳”第一版已经上传到微软Market Place,正在审核中。

  “移动互联网试错的机会更容易”,王涛说,他表示相比互联网产品,移动互联网产品不论是从开发周期还是产品定位上都要“轻”一些,一次尝试不成功,还可以很快转到另一个。另外,由于产品从开发到投入市场的周期相对较短,你可以很快看到用户的反应,“这对开发者来说是件很有意思的事情”。

  基于云计算的移动应用

  尽管从 “个性化阅读”转型为了“个性化应用推荐”,海纳要处理的数据量仍然相当庞大。

  “后端推荐服务计算量非常高”,王涛举例说,“假设你有10万个用户,10万个应用,要计算出用户最喜欢的应用,那就是10万乘10万的运算量级”。对于小团队来说,这样的运算量级自己搭建服务器成本是很高的,此外,移动应用通常有比较大的爆发力,一款好的应用其用户量的增长经常是几何级的,普通服务器无法应对这样的动态需求增长,常常令开发团队在用户量突增时“悲喜交加”。基于对海量数据运算能力和弹性空间的要求,“海纳”选用了微软Windows Azure云计算平台承载其后端服务。“不过,我们不是所有服务都放在云端”王涛说,“只有计算量高的放在Azure上”。

  那么,开发基于云计算的移动应用和普通应用有什么不同?

  王涛介绍说,开发云端应用要考虑很多问题,比如performance的问题,你不能把数据一次性POST到云上,而要考虑异步的操作,小数据多次往上放。此外还有安全类问题,比如敏感数据的处理。用户操作习惯问题:哪些数据放在云上,哪些不放在云上,放在云上的是否要在本地有缓存等等,都要慢慢去了解。但从开发技术本身来说差别不大,现在关于云上服务都提供了很好的SDK,你不需要关心太多技术细节。王涛提示,云端应用在测试时比一般应用稍微麻烦一些,但对开发周期影响不大。

  谈到移动应用与云计算结合的未来趋势,王涛表示苹果的iCould算是一个先驱,它让手机的应用自动同步到苹果的云中心,用户不再需要关心数据的存储和过多技术上的东西。王涛预测未来会有越来越多的第三方应用会同步在iCould上,但遗憾的是iCould支持苹果平台,他希望未来会有支持所有平台的云计算服务。

#p#

  你必须知道的Windows Phone

  《你必须知道的.NET》一书以通俗易懂,细致全面的方式向开发者描述了.NET开发的一些细节和知识点,受到了读者的广泛好评。那如果再写一本《你必须知道的Windows Phone》都会包括哪些章节呢?

  面对51CTO记者这个问题,王涛略作思考后表示,如果真要写这样一本书,他会在第一章首先强调手机上应用与桌面及Web应用的差别。他表示移动开发与PC上的开发有很大不同。“更多不是开发技术的问题,而是你对移动产品的思路转变问题”。比如PC应用可以让用户大量的键盘输入,但在手机上就不行;比如按钮的摆放位置你要考虑用户是左手操作还是右手操作;手机联网你要考虑什么时候联什么时候不联,是否设置离线功能等等,很多细节的设计其实首先源于思路的转变。对于从传统领域转移过来的开发者来说,这点尤其重要。王涛说,之前的Windows Mobile之所以失败,就是因为它是用PC的理念去理解手机的操作系统。

  具体到Windows Phone开发,王涛强调基础是最重要的。Windows Phone开发者要打好两个基础,一个是语言基础,一个是运行时基础。所以书的第二部分会是一些关于这两方面的开发基础和细节的介绍。

  第三部分是Windows Phone最佳实践。王涛说,“涉及具体开发和产品的书,一定要强调实践中的经验”。学会从其他产品中吸取经验教训也是开发者必须学会的技能。“海纳”在开发过程中,也研究了很多同类的产品,包括Android和iOS上的。王涛表示,现在Market Place上已经有四万款应用了,但是相比Android和iOS上的应用Windows Phone的应用大多还不够精致,所以“现在是追求质的时候了”。

  在书的最后,王涛表示,他会做一些移动应用与云端技术结合的探讨。

  我们不知道王涛先生是否真的会写这样一本书,问这个问题的初衷是,希望他能为广大准备加入Windows Phone开发的朋友们梳理出一条学习的脉络。根据51CTO的调查,目前Windows Phone开发方面的书籍资料确实不够多,特别是关于“最佳实践”方面的分析介绍非常欠缺,这也是因为Windows Phone开发还刚刚起步,值得推荐的原生应用实在乏善可陈——这是Windows Phone目前的弱势,却也正是开发者们的机会。抓住机遇,也许下一个红遍全球的移动应用的作者就是你。

  12月17日《Phone Club第八期-快乐技术沙龙“for Windows Phone”》上王涛老师将现场为大家讲解《让Windows Phone应用在云端翱翔》,点击这里报名!

责任编辑:佚名 来源: 51CTO原创
相关推荐

2020-02-28 14:05:00

Linuxshell命令

2017-12-07 15:47:25

2012-09-29 09:22:24

.NETGC内存分配

2017-12-07 15:28:36

2012-09-29 10:29:56

.Net内存分配继承

2021-10-29 08:44:22

推拉机制面试broker

2015-06-29 09:40:10

Rails新特性

2017-10-11 15:50:18

光纤通信传输

2021-03-01 07:34:42

Java泛型ArrayList

2015-07-23 10:37:13

Linux命令

2012-11-05 09:19:37

2011-05-11 15:28:05

2019-05-30 08:25:50

5G4G网络

2021-07-19 22:40:56

Windows 11Windows微软

2011-12-16 17:05:58

2011-06-28 09:30:00

2015-10-27 10:22:47

Html5API调用

2019-01-08 10:29:12

BeautifulSoPython第三库

2011-05-13 11:41:55

2012-02-08 09:44:05

ChromeAndroid
点赞
收藏

51CTO技术栈公众号