超牛链AI Logo

超牛链博客: 读书|骑行|笔记分享
user
老王不响
@关于博主
2013-08-11

[译] 开发者角度,王道之论:Android 与 Windows Phone 12 mins read


前几天,在codeproject搜索Silverlight资料,偶然看到这篇文章,耐心读了2遍,非常不错:文章通过访谈聊天形式叙述,2位主角目前在《斯法克斯国家工程学院》软件学院上学。

周五晚上,我给作者Houssem Dellai发gmail,咨询能否授权我翻译为中文,并发布。 3个小时后,他很爽快的回邮件说没有问题,给我一个原文链接就行。

英文原文地址: Android vs Windows Phone

---------------------------------------------------------------------------------------------------------------------------------

作者目前在突尼斯,属于非洲北部一个小国家,人口1000万左右,约西安市人口的规模。

自我介绍

大家好,我是Houssem Dellai: 一名Windows Phone 开发者(译:他曾多次参加突尼斯Windows Phone编程挑战赛并屡屡获奖,且已获得微软Windows 8认证)。我身边的这位是我的同学Zied Jaballah: 他是Android 开发者 (译: 他已有3年Android开发经验).

我们一起曾在droidcon conference in tunis中做了一个session分享:从开发者的视角分别就Android和Windows Phone移动终端开发平台的几个方面问答。

Android和Windows Phone PK:

首先,我们通过应用商店,即一个移动终端开发者如何挣钱这个话题展开讨论;紧接着又讨论了手机终端支持情况。 然后,对IDE集成开发环境进行了分析: Visual Studio和Eclipse. 再然后,讨论了开发者最关注的模拟器。最后,我们又讨论了Google和微软对UI设计的规范要求。 结尾部分,又聊了一下平板电脑的话题。

1 – 应用商店

Houssem: 首先,让我们从应用商店开始讨论吧,看看Google为开发者做了些什么?

Zied: Google的应用商店叫 Google Play, 目前包含了近百万的app应用, 全球下载次数超过250亿次以上。那么,Houssem, 微软应用商店的情况如何?

Houssem: Windows Phone 应用商店目前有超过13万应用app. 虽然在数量远远不如Android商店的庞大, 但是,你可以找到你需要的所有应用app程序。

Zied: 开发者如要在google商店发布Android应用, 首先需要拥有一个 Google Play账号,申请注册费用为25刀。 那么,开发者申请一个微软的商店账号,需要多少钱?

Houssem: 在微软商店发布应用,有2类不同账号:开发者账号,需要49刀;还有一个是企业账号,需要99刀的费用。

Zied: 为了在Googe Play商店发布你的应用,你必须要通过Google的验证审核,这个过程很快,大约需要15到30分钟。 那么, 微软的应用审核策略呢?

Houssem: 微软商店的审核大约需要5天时间。 如果你的app被拒绝,你同样会受到一个审核错误报告,微软会告之你如何改进。 Zied! 我注意到你的PPT中提到了'恶意软件' ?!!

Zied: 是的, 这不是笔误。Google play商店良莠不齐,有很多恶意软件, 这个可能是因为审核过程过快,且 Android开发者群体数量庞大导致的。 事实上,google已经认识到这个问题的严重性,并且出了一个新政策,它参考了微软和苹果的做法,即通过应用的使用反馈情况来代替审核制度,如:Google允许你发布你的应用app, 然后它会扫描app是否属于恶意软件。 在今年2月,Google创记录的从应用商店下架了6万款应用程序。

Houssem: 感谢上帝,在Windows Phone商店,你不会受到恶意软件侵扰,她值得信赖。

2 – 手机终端

Zied: Ok, 我们现在讨论手机终端吧。你知道Android阵营拥有数量庞大的终端吗? 这些是为数众多的手机厂商生产的,如我们耳熟能详的三星、LG、摩托罗拉等。(译:还包括HTC和华为、中兴) 这些手机终端,纵横了低端、中端、高端市场的不同的用户需求。那么Windows Phone手机的情况如何?

Houssem: 拥抱Windows Phone的手机厂商有诺基亚、三星、HTC、LG等等(译:还包括华为、中兴)。微软出于想给消费者以最佳体验品质,故对硬件比较挑剔, 所以,目前市场上的终端的售价都较高。

3 – 集成开发环境(IDE)

Houssem: 截止现在,我们讨论应用商店和手机终端, 下面接着讨论一下集成开发环境(IDE)吧。为了开发Windows Phone 8程序,你需要安装Visual Studio 2012,如免费的Express版。 那么Zied, 谈谈Eclipse吧?

Zied: Eclipse是Android程序员使用最多的IDE,免费且开源。呵呵,最重要的是,它没有太多的需求。( Zied望着Houssem乐了一下 :P ).

Houssem: 对于要通过VS 2012来开发WP8应用程序,确实对运行环境比较挑剔,或者说稍微有点困难吧。如,VS 2012要求操作系统和硬件必须达到最低配置:硬件需要支持能够安装虚拟环境; 操作系统的要求是Win 8 专业版或者企业版,Basic版本不支持,更重要的是,要求Win8操作系统是64位的。

Zied: 那么对你来说,能够满足WP8开发的必备条件, 你算是很幸运了。 但是, 对于Eclipse 来说,则更幸运:压根就不挑剔操作系统和硬件环境。 如,你只需要安装JVM虚拟机即可。事实上,只要能够安装JVM虚拟机,程序员可以在Windows、Mac、Linux等任何操作系统下用Eclipse开发Android应用程序。

Houssem: 众所周知,Visual Studio给程序员非常爽的体验,如:调试源码很容易、高效的编程能力、定位错方便误、修复问题非常快等等优势。

Zied: Houssem,在调试源码这一点上你获胜了, Visual Studio的的确确在调试上把Eclipse远远甩在后面。 但是,我更喜欢Ecipse数量众多的插件,通过这些插件的配合,你可以做得更出色。那么,VS有插件吗?

Houssem: 插件,Visual Studio当然有啦! VS也有大量的插件,且这些插件大部分开源。 你可以通过VS来搜索不同的插件,安装或升级来扩展Visual Studio的IDE。

4 – 模拟器

Houssem: Ok, 我们接着讨论下一个开发者关注的话题:模拟器.

Zied: Android 模拟器运行的不够快,我周围的很多开发者都饱受其害。但是,Google 对一些新机器,通过类似快照技术加速,目前看效果还不错。 如,这里还有一个模拟器开源项目Android x80, 其运行效率非常高,或许是Google模拟器的可选方案之一吧。让我们看看,微软为开发者在模拟器方面做了些什么?

Houssem: Windows Phone 模拟器运行效率非常高。她采用了hyper-v作为虚拟化环境,所以响应很及时。

5 – UI设计

Zied: Ok, 对比WP8的模拟器,Android确实显得力不从心。那么,微软的UI设计方面的支持情况如何呢?

Houssem: 呵呵, 我很欣赏你的坦率。Windows8采用了一种叫做现代UI设计的新的图形风格。它基于“内容胜过形式”的思路,这也意味着,编程开发者只需要把心思放在编码逻辑上,而不用太多注意主题、颜色、外形等。 这种UI设计有其严格的设计规范,但也有一些可复用的模板和控件,故UI可以被做的很漂亮。 如,作为WP8的程序员或者美工,你将会通过微软的expression Blend设计工具的做出最佳视觉效果。 Blend是一个IDE,专门为美工而生,即美工不用安装VS 这种程序员专属的IDE。 当程序员熟悉这些规则后,他将在一开始的时候不用美工。等程序demo成型后,在考虑美工介入提升UI设计、美化等。

Zied: 在Android这一侧,设计是程序员较头痛的一件事情。 你不得不写大量的XML去调整UI,拖拽的方式调试UI元素效果往往不好。 但是,一旦你精通XML的设计模式,则会爽翻天。Google也有自己的设计规范,只是没有微软这么严格罢了。

截止目前,我们讨论应用商店、IDE、设计规范、手机终端。 下面讨论一下平台电脑情况吧。

6 – 平板电脑

Houssem: Windows tablet平台没有运行WP的操作系统,它运行的是Windows RT,这是一种轻量级的Windows 8操作系统,专为平板电脑设计: 不能运行.exe程序, 仅只能运行Windows商店里面应用程序。但是,另外一种叫做Surface Pro平板可以运行
windows 8操作系统和.exe程序。

我猜测WP8有80%的API和Windows8 API相同。故,你可以很容易的在WP8和Windows 8之间共享代码。

Zied: Android操作系统不仅可运行在手机终端,也可以运行在平板电脑。从Android 3.0开始, Google新增了专门为大尺寸屏幕设计的API,故你可以开发专门适用于平板电脑的应用。其平板应用程序使用起来效果非常好。

总结

一般而言,这种讨论无法一决雌雄。某些方面,Windows Phone占据优势, 另外一方面说,Android获得胜利。至于谁是王者,这取决于你选择采用哪个平台,选择权在你。

2013-08-11
老王 加冕为王
老王,工作了19年的软件工程师、连续创业者、Blogger(since 2013),微软.net MVP获得者(2015~2016)、 Unity3D UVP获得者 (2017)。 曾任上市公司研发主管、知名外企Social Media Marketing 。 现专注于Instagram、SEO等海外社交媒体营销技术研究与实践。 四十而立的我,有2个可爱的宝宝,喜好骑行、读书、木工, 尤其喜好历史、科幻书籍。
友情链接
超牛链 57天前 2024年3月6日 15:17

带着好奇心等楼主的精彩解读

最新文章

超牛链AI:Ollama本地LLM LangChain RAG小试--算力为王

算力为王时代: CPU --> GPU

GPU这...
【发刊词】超牛链AI: hello world.

​公元2024年,比2023年的AI风暴,更加寒噤。

《一句顶一万句》 遇见一个能说的上话的人不易

2024年 甲辰龙年春节假期,我看了2本小说,茅盾文学...

2023个人总结: AI、骑行、青椒炒肉丝

后疫情时代,刚褪去口罩。又迎来经济消费降级,我的客户同...

热门文章

C#程序员整理的Unity 3D笔记(六):Git源码管理

对程序员而言,写的代码用源码管理系统管理起来,非常方便...

且行且思:记录一次西安城墙国际马拉松---8公里

百度搜索,输入西安城墙马拉松,有7万2千个结果。 实际...

骑行故事初心--自由的御风而行

2023年,三年疫情过后第一个春天,我开始了骑行: 空...

Unity3D for VR 学习(7): 360°全景照片

    在VR应用中,有一个相对简单的虚拟现实体验,那...

相关【技术杂谈】文章

查看所有相关【技术杂谈】文章
搭建Squid3 密码账号IP代理

上文中,说明了 Squid3 IP Proxy 隐藏原IP,这里就搭建Squid 3密码账号IP代理进行整理,涉及...

不用插件,js脚本显示星号密码

不用插件,js脚本显示星号密码

以前,我是用Chrome插件做这个这的--显示星号密码的。 今天,分享一个不用插件...

执行MySQL报错

今天新采购了柒比贰WordPress主题,安装主题时候报错: MySQL命令行使用sql语句进行建表时,MySQL...