作者AlvinX (这里是昵称)
看板WindowsPhone
标题Re: [讨论] Windows Phone 7 致命缺陷
时间Fri Jun 22 13:39:02 2012
原文有两个错误
1. 并非只有大公司才使用Native Code。一般开发者(Indie Game Developer)
会怎麽写游戏? 有很大一部份的人会购买小型的商用引擎, 一套约10万以下,
而且可以不抽成, 开发无限款游戏。
而这些商引擎用是Native Code开发成, 用自己的VM跑脚本语言, 开发人员就
撰写脚本语言+准备美术素材。完成之後就可以Build成iPhone/Android/PC等
版本。
但是WP7没Native Code, 但WP8有, 所以在边际效应的考量下, 这些商用引擎,
一定很快会支援WP8, 这时在iOS/Android上的APP大军, 管他大小型公司,
很多APP都会移到WP8上。并非只有EA, Gameloft...这种大公司才用Native code。
2. Native code 影响的不只是游戏, 有太多APP非得用Native Code才写得出来,
比如影像处里, 影片播放这种高效能需求的APP都需要Native Code。iOS上就有
BuzzPlayer, XYPlayer, ECPlayer这类能播各种格式的影片软体。而WP7
就乏善可陈。为什麽? 因为Native Code, 他们可以把各式Open Source的解码
函式库build成ios/android, 但WP7, 很抱歉, 重写成C#比登天还难。
※ 引述《Cinkot (...)》之铭言:
: 现往後的App若是使用 Native Code 来开发,那WP7就只能旁边画
: 圈圈。就算不是用 NC 来开发的App,也是有机会因为API之类的问
: 题而出错。前面也有大大提到很多次了,需要效能的App会使用NC
: 来开发。精美的游戏也会用NC来开发,因为还可以搭配微软七大神
: 器之一 DirectX。一般开发者则会使用 C# 来降低开发困难度,但
: 大公司可能就会直接考虑用 NC,反正死道友不死贫道,难写是RD
: 的事。而微软推荐使用 C#,因为这样WP7的装置才有得用,加上C#
: 本来就是他力推的。但是不管怎样,反正WP7不能升到WP8,不能用
: NC,都已是既定事实。
: 我相信现在很多人都很气,尤其是拿二代机的。但我个人是还好,
: 因为我是拿一代小莫,我不care能不能升级到WP8。因为微软说会
: 把WP8的新功能下放到WP7来,我在意的只有要放什麽下来,什麽会
: 被放下来?新的UI有,很好。可是光是从目前发布的新闻稿看起来
: Nokia Drive,现有的WP7(Nokia以外)似乎是无缘的,这才是真的
: 会跳脚的点。
: 至於那些往後会有的精美游戏,高效能App,我也觉得还好。当然
: 主要是因为我也不玩游戏,再者就算WP7能够跑NC的App也不见得跑
: 的顺,毕竟硬体真的旧了。比较担忧的是现有的App其实还是东缺
: 西缺。缺的原因可能是开发商(者)觉得WP还不成熟,没有吸引力,
: 或者单纯就是开发进度缓慢。但最怕的就是他们是在等NC的出现。
: 现在NC出现了,他们就紧抓着NC,那只能仰赖C#的WP7就仰天长叹
: 了。举例像是启动速度慢到离谱的What's app,若是改用NC来写,
: 是否速度就会上来,那开发商是要选择抛弃现在的C#版只顾NC版,
: 或者是考量现有的2%持续只维护开发C#版,抑或是两版本同时维护
: 但又有可能C#更新的不完全又或者慢一拍,让我们继续看下去。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.135.3.139
1F:推 Domos:专业 06/22 14:53
2F:推 ttykimo:长知识! 06/22 15:25
3F:推 friedpig:看来WP7.8还是保持被骂得要死APP市场了 6/20以前还梦想 06/22 15:32
4F:→ friedpig:能靠升级旧回来 06/22 15:33
5F:推 arrenwu:我同意这篇的说法。但是Killer App常用到 Native Code 吗 06/22 15:36
6F:推 icarus0508:1 同意 2. 不一定 c# lib已经很多了 特别ms自已有很多 06/22 15:37
7F:→ icarus0508:可以解同样的问题 06/22 15:37
8F:→ icarus0508:回a大 killer app 要看是哪样的killer等级 06/22 15:37
9F:→ icarus0508:反正你可以想像 nc是个能力强大但不好控的玩具 06/22 15:38
10F:→ icarus0508:c#是ms提供的简单好写的东西 然後ms自已也给他很多 06/22 15:38
11F:→ icarus0508:lib可用 06/22 15:39
12F:→ icarus0508:要不要用 就看各公司考量 06/22 15:39
13F:→ icarus0508:另外 如果wp7.8的ie 是ie10 且支持html5 那就可以 06/22 15:40
14F:→ icarus0508:解决一些问题 如果html5 这几年起来的话~ 06/22 15:40
15F:→ icarus0508:不过到时大概早换手机了xd 06/22 15:40
16F:→ icarus0508:还有 请不要小看c# 很多多媒体的lib ms都有弄好了 06/22 15:41
17F:→ icarus0508:同时也已经是标准语言了 06/22 15:41
18F:→ icarus0508:一切还是要等7.8出了spec 再看看吧~ 06/22 15:42
如果说只要少数的Killer APP可以用C#实作, 我们就会有不少APP
留在WP7, 然後就会觉很好用了。
但我觉得事实非如此,
什麽叫Killer APP? 是指出在这个平台上, 这个平台就会大受欢迎的APP吗?
很多人喜欢引用80/20定理, 套在手机上我们说
一个使用者可能只用一只手机的20%功能, 然
而我们可以出一只手机只有20%的功能吗?
我认为是没办法的, 因为每个人的20%都不一样,
这些20%联集起来可能是80%或是100%。
同理, APP也是一样, 只有20% "Killer APP"出在WP7就够了吗?
每个人的Killer APP都不一样, 对A来说Birzzle很好玩,
但对B来说也许影像编辑会更有用。
i大说对一句"就看各公司考量",
以下就说明各公司会怎样考量。
为了尽可能满足所有WP7的使用者, M$理应降低开发商进入WP7的门槛,
吸引在iOS和Android的开发商将APP移入WP7。
原本还期待Tango会有Native Code, 有了Native Code,
起码Native Code为基础的APP就容易re-build到WP7上
但WP7确定没了Native Code, 我想大多数的公司都不会特地转成C#,
只为打入WP7这个不会再成长的平台。
回i大关於C#有很多好用的lib,
我承认C#的基础.NET Framework提供一堆很强的基础函式库,
但那无助於大家把特地APP转成C#, 再好用, WP7市场小, 实在是无强大诱因。
现在, 我想只有真正非常爱WP7的发开者会在WP7写APP吧。
※ 编辑: AlvinX 来自: 220.135.3.139 (06/22 18:10)
19F:→ AlvinX:补充: 就以影片解码常用的libavcodec来说, 06/22 18:14
20F:→ AlvinX:C#跟本就就没有可以对应的LIB 06/22 18:14
※ 编辑: AlvinX 来自: 220.135.3.139 (06/22 18:14)