走进“衣食住行” 看Windows Phone应用是如何炼成的

原创
移动开发
5月,一款叫做“衣食住行“的移动应用在微软Marketplace上发布,这是在Windows Phone平台上的一款应用,由微软亚太研发集团中国创新组(CIG)开发完成。近日,记者专访CIG“衣食住行”开发团队, 一同回顾Windows Phone应用的诞生过程。

【51CTO专访报道】5月,一款叫做“衣食住行“的移动应用在微软Marketplace上发布,这是在Windows Phone平台上的一款应用,由微软亚太研发集团中国创新组(CIG)开发完成。近日,记者专访CIG“衣食住行”开发团队, 一同回顾Windows Phone应用的诞生过程。

 
“衣食住行”由微软亚太研发集团CIG的3名技术人员通过4个月的时间完成上线。项目经理黄昊文在接受记者专访时谈到:“项目组中的3名.NET开发者,之前都没有移动应用的开发经验,只是做过Windows的桌面应用开发,部分了解SQL Server。这次也是***次接触Windows Phone SDK。”衣食住行“作为一个信息聚合平台,需要和第三方合作伙伴的数据进行整合,包括API文档的对接或修改。对于***次接触移动开发的项目团队,通过MSDN找到了详细的开发文档,虽然基本上越过了技术上的挑战,但是面对移动开发全新的业务流程,开发方法和项目管理的过程,在初期黄昊文却是面临着很大的挑战。

Windows Phone应用:衣食住行

Sprint核心——体验敏捷开发的实践
 
“衣食住行“客户端的代码在3万行以上,不包括XAML。全部从零开始写,贯穿项目始终的敏捷开发是黄昊文感触最为深刻的开发过程。”我们将整个项目分成了4个Sprint,3个开发Sprint,1个测试Sprint。敏捷开发对项目经理的要求很高,需要灵活的把握和调整每一个周期内的项目进度“,黄昊文回顾了当时完成第1个Sprint时,由于是新组建的团队需要磨合和了解,用了比计划多50%的时间来完成,而很快又发现这个结果并不是所需要的,因此全部推翻重新来做。“这也是敏捷开发相比较原先瀑布式开发的优势,能将风险控制在Sprint里。一旦发现项目出现偏差,能够很快调整方向,有效的减少了项目延期、需求实现不匹配的问题。”

[[77047]]

微软亚太研发集团中国创新组全家福

黄昊文认为敏捷开发过程还有一个很重要的环节就是每天的Sprint短会。短会的目的很明确,每个人就回答三个问题:你昨天做了什么?今天打算做什么?在做的过程中碰到过什么问题?如果能回答这三个问题,项目经理就能够把握整个项目是否按照计划完成,有没有出现之前没有预想到的风险问题等。“而且重点是Sprint短会一定得在早晨站着开“,黄昊文说:“每天每个人用两、三分钟回答这三个问题,3~5人的项目组花15分钟左右就能很好的了解项目的进度,和一些突发的事件,然后很快可以调整计划应对。”
 
黄昊文总结了敏捷开发成功的几个要素:***,开发者的规模不能太多,一旦超过10人以上,作为项目经理对项目的核查就很困难了,一般3~6个最为合适,分工方式也最为灵活。第二,划分Sprint的周期,一般是4~6个星期,不能少于3周。在Sprint开始之前,项目经理要很明确的列出做一个Sprint的计划。而且要尽可能的细化,每一个工作的完成时长不能超过2天,***以半天为周期进行划分。“***通过1~2个Sprint实现项目成员内部的磨合了解,这样接下来的项目进展就会越做越顺了“,黄昊文分享道:“敏捷开发的灵活性还体现在整个项目组都会全程参与讨论交互设计,接口设计,每个人都很清楚完成的这一部分将会对整个产品带来怎样的影响,并了解整体的业务流程和进度,这对于开发者是一种非常好的积累”。
 
Expression Blend、Metro控件:Windows Phone应用开发利器
 
基于Visual Studio平台的Windows Phone应用开发让开发者们很快进入了角色。更为突出的是引入了Silverlight XAML,更好的让设计和开发人员可以并行协作的开展项目了。以前做前端开发最痛苦的是用程序实现切图后的动画效果,现在这部分的工作完全可以由专业的设计人员在Expression Blend中完成。“在用了XAML工具后整个开发速度快了很多因为前端开发无需绑定最终版的设计效果图“,黄昊文印象深刻的谈到:”我们实现了真正的并行开发,在界面中确定几个控件的名字,绑定控件之间的逻辑关系后,单个控件的界面、摆放位置以及交互体验即使进行调整,也不会影响后台的程序开发。这样设计和开发相互之间的依赖性减弱,没有相互之间的确认、修改、等待确认的过程,非常有效的缩短了整个产品的设计开发时间。“
 
Expression Blend从界面和用户习惯来看,与Photoshop的使用很相似。既可以成为作图工具,也可以通过代码完成动画效果,包括一些简单的逻辑都可以通过Blend实现,前端展现层和后端逻辑层分开,由前端的控件绑定后端的数据实现交互。
 
因为Windows Phone采用了全新的Metro风格,这种风格看似简单的展现,其实在后面有着针对用户体验分析这一门深入的科学研究。黄昊文带领的项目团队开始Windows Phone应用开发的初期,也曾尝试花大量的时间去做自己的控件,但发现不仅耗时而且做了无用功。“这可能是传统桌面应用开发人员经常走入的误区,喜欢自己写一些个性化的控件。但在移动应用层面,我们一定要遵守的规则就是所有的开发过程都是围绕要提供更优秀的用户体验为最终目标的“,黄昊文深有体会的谈到了一次失败的控件开发经历:”在Sprint1中,我们花了大力气做了一个Windows 上很常见的下拉框,并且绑定了数据进去。后来发现在手机上的用户体验非常不好,因为没有考虑到手指、屏幕、空间等等的因素。“
 
在Windows Phone SDK自带的标准控件中,所有的设计调用是完全符合Metro风格的。并且丰富的控件数量可以满足几乎所有的需求,开发者不需要自己再去做控件,通过调用就可以最简单、平滑的实现Metro风格的应用开发。
 
在采访“衣食住行“项目组时,微软亚洲工程院副院长、微软亚太研发集团技术孵化部高级总监芮勇博士分享道:“微软在过去三十多年发展过程中,做出很多很好的产品。但是在一本叫做《创新者的困境》的书中曾写道:一个公司越成功,在发展过程中会变得越来越危险,因为依托成功的产品,会丢掉要去创新的风险。而当一个公司失去创新的欲望时,就会被日益边缘化。”而让大家非常欣喜看到的是,微软在今天依然努力做着创新的尝试,也在将这创新的基因植入更多的开发者体内。

[[77048]]

微软亚洲工程院副院长、微软亚太研发集团技术孵化部高级总监芮勇博士

[[77049]]

微软亚太研发集团战略合作与商务运营部总经理周斌女士

责任编辑:马沛 来源: 51CTO.com
相关推荐

2019-01-21 16:56:32

华为

2012-02-01 16:32:32

2017-01-11 09:22:03

大数据应用资源

2016-11-28 15:17:52

大数据应用大数据

2021-04-02 14:23:12

WiFi网络技术

2012-03-08 21:46:47

Windows Pho

2016-11-18 13:40:30

华山医院信息化医疗

2020-10-22 15:01:22

大数据互联网医疗

2021-08-17 09:51:00

云原生数据库阿里云

2021-02-04 12:02:25

人工智能石油工具

2012-01-18 09:22:59

Windows Pho设计过程

2015-09-21 11:11:14

2015-10-25 11:02:36

2017-03-07 10:46:51

互联网

2019-03-29 08:21:51

马蜂窝Golang并发代理

2018-04-27 14:39:28

物联网物联网应用智能

2018-05-21 21:22:40

无人驾驶智慧交通无人配送

2011-03-14 10:43:55

应用Windows Pho

2012-08-17 09:15:16

Windows Pho

2011-12-16 14:17:59

微软MVPWindows Pho
点赞
收藏

51CTO技术栈公众号