紅軟基地 推薦
2012-06-22
微軟6月20日正式發(fā)布了Windows Phone 8,引來了網(wǎng)上網(wǎng)下一片熱議,正面和負(fù)面的評(píng)價(jià)紛飛。有一個(gè)非常有趣的現(xiàn)象,第一批進(jìn)入Windows Phone的開發(fā)者集體跳反,認(rèn)為Windows Phone 8背離了自己的路線。 那么,我們就來分析一下,Windows Phone 8為什么引發(fā)了如此多的討論,以及在Windows Phone 8的時(shí)代,開發(fā)者怎么玩,而不是被人玩?
都是內(nèi)核惹得禍
微軟的發(fā)布會(huì)上首先強(qiáng)調(diào)的一個(gè)概念就是“Share Windows Core”,也就是說Windows Phone 8與Windows 8共享內(nèi)核。很多媒體以此說,Windows Phone 8會(huì)完全兼容Windows 8的應(yīng)用,這一點(diǎn)是錯(cuò)誤理解。所謂共享內(nèi)核,只是說Windows Phone 8和Windows 8的內(nèi)核相同,但并不代表驅(qū)動(dòng)程序、API、應(yīng)用程序?qū)拥娜考嫒荨?span style="display:none">NRp紅軟基地
Windows 8 RT是微軟歷史上第一個(gè)支持ARM CPU的操作系統(tǒng),所以將Windows RT的內(nèi)核遷移到Windows Phone上無可厚非,畢竟Windows Phone 7的內(nèi)核是Windows CE。Windows CE在1996年發(fā)布,比Symbian年紀(jì)還大,雖然經(jīng)歷了兩次內(nèi)核重寫,到現(xiàn)在也是垂垂老矣。
微軟還是做了一些工作,至少讓W(xué)indows Phone 8能夠兼容所有Windows Phone 7的應(yīng)用?墒遣僮飨到y(tǒng)是上下兩個(gè)接口,上面的是API,下面的則是驅(qū)動(dòng)程序。Windows RT在開發(fā)時(shí),沒有考慮要兼容Windows Phone的現(xiàn)有硬件,所以,Windows Phone 8也沒有辦法支持原有硬件。
Windows RT是支持一系列ARM CPU的,兼容現(xiàn)有CPU真的這么難嗎?個(gè)人認(rèn)為,如果真的很容易,微軟就兼容了。所以,Windows RT可能在芯片級(jí)做了一些優(yōu)化,導(dǎo)致已有ARM CPU無法正常運(yùn)行。最有可能的地方是DirectX支持,大家都知道,目前的ARM CPU是不支持DirectX的,而是支持OpenGL ES。如果將DirectX轉(zhuǎn)化為OpenGL ES,勢(shì)必會(huì)影響效率,所以,微軟很有可能向芯片廠商施加壓力,讓他們?cè)С諨irectX。
這一點(diǎn)目前還無法證實(shí),要等支持Windows RT的ARM CPU具體規(guī)格出來后才知道,要判斷也很容易,如果能夠支持DirectX的Shader Language,就是芯片級(jí)支持,否則就是軟件轉(zhuǎn)換。順便多說一句,Windows Surface選了個(gè)燙的要死的CPU,又是鋁鎂合金機(jī)殼,大家要小心被燙到才好,哈哈!
好了,內(nèi)核的問題就是這個(gè)樣子。Windows Phone 7.8仍舊是運(yùn)行在Windows CE上的,而Windows Phone 8則是運(yùn)行在Windows RT內(nèi)核上的。
大家看到微軟該罵的第一個(gè)地方了吧?既然Windows Phone 8的大部分功能能夠跑在Windows Phone 7.8(也就是Windows CE 7)上,你閑著沒事?lián)Q什么內(nèi)核啊?如果是Windows,你換就換吧,反正沒人跟你競(jìng)爭(zhēng),弄爛一代,再研發(fā)新一代?墒荳indows Phone還處于一個(gè)追趕的地位,在這個(gè)時(shí)候不是抓緊時(shí)間研發(fā)新功能,而是忙著換內(nèi)核,分裂開發(fā)者、拋棄合作伙伴、讓已有用戶感覺被拋棄。以上這些損失,換來的只是,所有人聚集在Windows的大旗之下,真的值得嗎?
當(dāng)技術(shù)上的選擇(我沒有用“失誤”這個(gè)詞,也許身在局外,不知道其中的無奈吧)無法挽回時(shí),市場(chǎng)能力的缺失給Windows Phone釘上了最后一個(gè)棺材釘。Windows Phone 8和Windows Phone 7.8應(yīng)該會(huì)出現(xiàn)在以后MBA課程的經(jīng)典失敗案例中吧?
你哪怕叫Windows Phone 8和Windows Phone 8 Compact呢?整場(chǎng)發(fā)布會(huì)中,我們看不到市場(chǎng)部門的影子,事先也沒有就Windows Phone 7.8進(jìn)行過深入的討論。從這件事上,我們就可以看到市場(chǎng)部門的漫不經(jīng)心,真懷疑微軟市場(chǎng)部門的錢都花到哪里去了?
微軟市場(chǎng)部門是隸屬于產(chǎn)品組的,這個(gè)格局造成了很多低級(jí)的失誤。每次看到一群不會(huì)講故事的工程師在臺(tái)上假裝瀟灑時(shí),總會(huì)感覺到一個(gè)冷冷的目光在天上注視著他們。
當(dāng)然,微軟還有機(jī)會(huì)彌補(bǔ),宣布Windows Phone 7.8可以升級(jí)到Windows Phone 8的一個(gè)特殊版本,但是……有多少人會(huì)相信呢?
誰是最大的Loser?
對(duì)于這個(gè)問題,大家的答案一致:諾基亞。去年2月諾基亞上了微軟的賊船,大家都認(rèn)為是“余則成”的功勞,個(gè)人認(rèn)為,這是諾基亞的必然選擇,“余則成”只是執(zhí)行者。過去一年中,微軟和諾基亞看似緊密無間,但有幾個(gè)跡象讓人覺得有些隱隱不安。
首先是Lumia 610的推出,諾基亞雖然擁有奢侈手機(jī)品牌Vertu,但主要的市場(chǎng)還在Feature Phone和低端智能機(jī)上,但Windows Phone并不適合開發(fā)低端智能機(jī)。其他的東西砍不掉,諾基亞只能砍內(nèi)存了,內(nèi)存一砍,引出了一系列麻煩,最大的新聞是憤怒小鳥無法運(yùn)行。這一點(diǎn)上來看,諾基亞不懂智能手機(jī)。
另外,雖然諾基亞很早就宣布要做Windows 8平板,Microsoft Surface沒有選擇諾基亞做為硬件合作伙伴,而是選擇了更小更容易控制的Nook。從這一點(diǎn)上來看,固執(zhí)的北歐人還是讓高傲的美國(guó)人吃了一些苦頭的。
所以,這次發(fā)布會(huì)上,諾基亞的地位并不高,至少?zèng)]有過去一年高。想想也是,三星、HTC都是隔岸觀火,有好處就上,沒好處就撤,只有諾基亞沖在前邊,結(jié)果Windows Phone 8出來,只有諾基亞要面對(duì)大量無法升級(jí)Windows Phone 8的憤怒用戶。
而且最可怕的一點(diǎn)是,Windows Phone 8最快還有半年才能出來(個(gè)人估計(jì)更為悲觀,最快8個(gè)月左右才能大量鋪貨),用戶肯定不會(huì)購(gòu)買一面世就落后的機(jī)器,而且Windows Phone 8發(fā)布會(huì)正好撞上iPhone 5。您還以為自己是當(dāng)年的IT霸主啊?世界變了。
等到Windows Phone 8出來,估計(jì)諾基亞的骨頭就可以用來敲鼓了。微軟延續(xù)了以往“死道友,不死貧道”的光榮傳統(tǒng)。
現(xiàn)在諾基亞僅剩的一條路就是被收購(gòu)了,三星、微軟都是潛在的收購(gòu)者,現(xiàn)在90億美金的市值,哪怕溢價(jià)50%,也就140億美金。微軟當(dāng)年可是準(zhǔn)備了400億美金收購(gòu)雅虎,Skype才花了80多億,還有足夠多的錢呢。別忘了,小米的估值還60億美金呢,諾基亞怎么也比小米強(qiáng)一點(diǎn)吧?
誰是第二大的Loser?
第二個(gè)Loser是誰?我覺得是Terry Myerson,現(xiàn)任Windows Phone團(tuán)隊(duì)的老大。 Terry Myerson接替Andy Lees成為Windows Phone部門老大的時(shí)間并不長(zhǎng),去年12月才正式交接。關(guān)于Andy Lees的去職,坊間傳說主要原因是業(yè)績(jī)不夠理想。想想這位老兄也夠背的,他離開時(shí),諾基亞的機(jī)器還沒有大量鋪貨,今年的銷量完全是因?yàn)樗呢暙I(xiàn),成績(jī)卻歸了人家。萬惡的KPI啊。
業(yè)內(nèi)傳聞,Andy Lees在制定Windows Phone策略時(shí),采用的是“跟隨戰(zhàn)術(shù)”,iPhone有什么,我也有什么。看起來似乎很消極,但這正是微軟打敗諸多強(qiáng)手的殺手锏,微軟的技術(shù)積累深厚、工程師隊(duì)伍一流,唯一的命門就是創(chuàng)新性不足,跟隨戰(zhàn)術(shù)是符合微軟實(shí)際的。
多說一句,Windows Phone這個(gè)部門也是多災(zāi)多難,最早屬于移動(dòng)和娛樂部門,老大是Robbie Bach,一個(gè)創(chuàng)造了XBOX之成功和Zune之潰敗的傳奇人物,他離開微軟前的最后一個(gè)項(xiàng)目是Courier電子書,一個(gè)充滿想象力卻生不逢時(shí)的產(chǎn)品。
扯遠(yuǎn)了,從這次發(fā)布會(huì)可以看到,Terry Myerson完全拋棄了Windows Phone 7,全面倒向了Windows 8的設(shè)計(jì)。本來是自己的東西,被其他團(tuán)隊(duì)拿過去加工完了,自己再拿回來用。結(jié)果就是,Metro UI設(shè)計(jì)的連他媽都不認(rèn)識(shí)了。更詳細(xì)的描述可以參考李靖南的文章《別鬧了,微軟!磁貼不是這樣搞的》
我們可以看到Terry Myerson拋棄了已有的Windows Phone設(shè)計(jì),當(dāng)然這可能是集體決策的結(jié)果。去年夏天,微軟總部的工程師過來交流,就曾經(jīng)提過一個(gè)問題“Windows Phone是否應(yīng)該改成平鋪式的小圖標(biāo)?”
我當(dāng)時(shí)的觀點(diǎn)是,無論成敗,Windows Phone要堅(jiān)持自己的路走下去,Metro UI不可能讓所有人都喜歡,但這個(gè)東西是非常風(fēng)格化的,而且識(shí)別率非常高,雖然短期內(nèi)無法被iOS和Android的用戶接受,如果改回圖標(biāo)式UI,Windows Phone的特色就沒有了,人家為什么還要買你?假以時(shí)日,Windows Phone會(huì)找到屬于自己的粉絲群的。
一年時(shí)間過去,我們可以看到Metro在被大家接受,但是這個(gè)時(shí)候,微軟卻自作聰明地將決定權(quán)交給了用戶,讓用戶可以將圖標(biāo)縮小成平鋪式,雖然可以迎合一部分用戶的喜好,但是自己的風(fēng)格就沒了。一個(gè)平面的圖標(biāo)系統(tǒng),能夠和iOS, Android的水晶按鈕比嗎?
這個(gè)其實(shí)就是典型的工程師思維,他們是從功能出發(fā)的,試圖想辦法解決各種需求,結(jié)果到最后做出來的東西只能是不倫不類。其實(shí),解決80%的人的需求就好了,如果能夠有80%的人買你的手機(jī),你不就賺大了嗎?
Windows Phone 8出來,給我一個(gè)感覺,形還在,但魂已經(jīng)不在了。如果說這些都是Terry Myerson帶來的,也未必公平,畢竟長(zhǎng)頭發(fā)的法國(guó)帥哥還在,但我們可以猜測(cè),在過去一年時(shí)間里,一定發(fā)生了很多事情,讓一批了解Metro精髓的設(shè)計(jì)師離開了自己的位置,或者放棄了自己的堅(jiān)持。也許這和Windows RT有關(guān),但誰知道呢?
對(duì)開發(fā)者的建議
俱往矣,再過幾年回頭看時(shí),我們可以認(rèn)為Windows Phone開發(fā)者此時(shí)的吐槽,是對(duì)于微軟背叛Windows Phone發(fā)展道路的一種失望,類似于失戀之后的反應(yīng)。
作為開發(fā)者,我們能夠改變的東西其實(shí)很少,擁抱變化,是我們唯一的優(yōu)勢(shì)。所以,我們挨個(gè)梳理一下新增的功能吧。一句話,微軟這次又是該干的沒干,不該干的干了一大堆:
1.IAP
IAP有了,不過人家好幾年前就搞出來的東西,弄出來也沒什么好驕傲的?墒潜镜鼗嗑?人民幣支付要多久?沒關(guān)系,我們?nèi)ベ嵗贤獾腻X了。
微軟弄了個(gè)電子錢包的概念,鬧了半天是NFC支付。NFC的普及至少還有兩年時(shí)間,把NFC外設(shè)裝進(jìn)去,等著第三方幫你玩就好了,心急火燎地開始弄應(yīng)用級(jí)的東西,萬一不合適改操作系統(tǒng)啊?
2.企業(yè)級(jí)特性
Window Phone 8的企業(yè)級(jí)特征被加強(qiáng)了,想想也是,微軟對(duì)于企業(yè)級(jí)服務(wù)市場(chǎng)最熟悉,而且微軟工程師在整理需求時(shí),會(huì)以自己所處的IT環(huán)境作為樣板。你去問問,全世界有幾個(gè)企業(yè)登錄VPN要用門卡上的IC卡芯片!
所以,Windows Phone 8上的企業(yè)級(jí)應(yīng)用可以開始了。如同微軟不會(huì)做消費(fèi)者市場(chǎng)一樣,蘋果不會(huì)做企業(yè)級(jí)市場(chǎng),所以還有很多企業(yè)在用Windows Mobile。將Windows Phone 8與Windows 8結(jié)合的企業(yè)級(jí)市場(chǎng)空間還是很大的,不過外設(shè)、VPN的問題解決了沒有?
3.游戲開發(fā)
這次游戲開發(fā)的變化是最大的,終于支持C++了。裝配腦袋的分析是最精準(zhǔn)的,因?yàn)橐獡Q內(nèi)核,如果Windows Phone 7就開放了Native API,到了Windows Phone 8就要重寫,那時(shí)候引起的波瀾會(huì)更大。
對(duì)于游戲開發(fā)者來說,DirectX和Havok游戲引擎絕對(duì)是利好的消息,畢竟可以在多個(gè)平臺(tái)間統(tǒng)一使用C++來開發(fā)游戲了。不過,基于Windows RT的Managed C++移植到其他平臺(tái)上去,工作量恐怕不比C#小多少。
在這里忍不住對(duì)XNA的事情發(fā)表個(gè)評(píng)論,雖然對(duì)XNA還沒有最后的結(jié)論,但前景不妙。但用XNA和C#開發(fā)休閑類小游戲,要比DirectX容易的多吧?不支持C++的確不對(duì),但你不能因?yàn)橛辛薈++,就放棄對(duì)XNA的支持吧?
那我們作為開發(fā)者應(yīng)該怎么辦?
1.將Windows Phone 8看作一個(gè)新的操作系統(tǒng)
其實(shí)Windows Phone 8是一個(gè)新的操作系統(tǒng),只是能夠兼容Windows Phone 7的部分功能。這次升級(jí)并不比Windows Mobile 6.5到Windows Phone 7的變化小。我之前曾經(jīng)說過,Windows Phone 7其實(shí)是1.0版本,現(xiàn)在看起來,我錯(cuò)了,Windows Phone 7充其量是個(gè)Preview版,還是Release Preview版,考驗(yàn)RP的版本啊。
所以,作為開發(fā)者,最好的辦法是找到Windows Phone 8的源頭——Windows 8 RT,從這里開始我們的新旅程。雖然目前還不知道Windows Phone 8對(duì)于WinRT API的支持程度如何,但是開發(fā)工具、開發(fā)語言、類庫(kù)都不會(huì)脫離WinRT。從以往的經(jīng)驗(yàn)來看,Windows Phone 8上的WinRT應(yīng)該是個(gè)精簡(jiǎn)版,目前.NET和C++應(yīng)該都支持,不過JavaScript支持如何就不知道了。
想想微軟的決策者們真的有點(diǎn)天真,大兒子用了套未經(jīng)驗(yàn)證的技術(shù),小兒子也一定要用,否則就不夠一家子,可是要玩完一起玩完啊。大兒子身體好,經(jīng)得起折騰,小兒子……
2.繼續(xù)維護(hù)Windows Phone 7.8版本
拋棄掉已有Windows Phone 7的用戶,會(huì)成為微軟的又一樁罪惡,其實(shí)微軟從來就不在乎已經(jīng)到他的平臺(tái)上來的開發(fā)者。但是,作為負(fù)責(zé)人的開發(fā)者,至少在一定的時(shí)間段內(nèi),要維護(hù)Windows Phone 7.8版本,其實(shí)Windows Phone7.8版本也是能夠運(yùn)行在Windows Phone 8上的。
但如果是開發(fā)新的應(yīng)用,開發(fā)者就面臨一個(gè)抉擇:使用Windows Phone 8 API就會(huì)不兼容Windows Phone 7,但如果使用Windows Phone 7,就會(huì)使用過時(shí)的技術(shù)。在過時(shí)的技術(shù)上投入過大,其實(shí)是對(duì)未來的犯罪。微軟就是這么把開發(fā)者架在火上烤的。
對(duì)于新應(yīng)用,我的建議是看量,如果Windows Phone 8的用戶量大于Windows Phone 7,我們可以采用Windows Phone 8來開發(fā),否則停留在Windows Phone 7上是一個(gè)相對(duì)明智的選擇。當(dāng)然,如果是想占坑、或者新的應(yīng)用使用了Windows Phone 8的某些新特性,那么不用猶豫,直接用就好了。
3.支持Windows 8和Windows Phone 8
比起Windows Phone 8與Windows Phone 7的纏綿悱惻來,Windows 8與Windows Phone8的關(guān)系倒是清晰明朗,人家才是親兄弟,只不過Windows Phone 8繼承了叔叔的家業(yè),順便把表弟給殺了而已。好像《哈姆雷特》的劇情啊。
所以,如果想兼容Windows 8和Windows Phone 8,問題其實(shí)并不大。而移植的挑戰(zhàn)可能會(huì)出現(xiàn)在UI上,比如,操作方式、分辨率。畢竟Windows 8是橫向滾動(dòng),Windows Phone上并不適合;而Windows Phone 8設(shè)計(jì)成那個(gè)鬼樣子,也跟要解決不同分辨率有關(guān),而Windows 8解決分辨率問題的辦法,其實(shí)未必適合Windows Phone 8。
從Windows 8開始,移植到Windows Phone 8應(yīng)該是一個(gè)較為理想的遷移路徑,不過,中間的挑戰(zhàn)也不小。我不相信微軟能把完整的WinRT API移植到Windows Phone 8上。
這一切只能等到Windows Phone 8的SDK出來后才知道。在夏天的結(jié)尾,好詩(shī)意的發(fā)布日期,估計(jì)今年夏天會(huì)很長(zhǎng),也許會(huì)下雪……
4.開發(fā)一個(gè)華容道
最后的建議純屬玩笑,昨天已經(jīng)有人發(fā)現(xiàn)了Windows Phone 8新UI與華容道之間的神秘聯(lián)系,所以,我們用Windows Phone 8的新UI開發(fā)一個(gè)華容道游戲,也許能夠火起來。
除了華容道外,同類消除、連連看、猜卡片類的游戲也會(huì)成為Windows Phone 8重點(diǎn)應(yīng)用。大家可以在游戲結(jié)尾增加一個(gè)投票:“你喜歡這樣的Windows Phone 8嗎?”。雖然我們改變不了什么,但至少可以讓我們苦逼的Windows Phone開發(fā)之旅多一些樂趣。
所謂樂趣就是,我們拿著Windows Phone 7.9的Lumia 800時(shí),會(huì)聽到以下的對(duì)話: “聽說這家伙以前是開發(fā)Windows Phone應(yīng)用的……” “Windows Phone?就是那個(gè)害死諾基亞、自己不和自己兼容的手機(jī)?” “是啊,我想不到誰還會(huì)為這種操作系統(tǒng)開發(fā)應(yīng)用……” “哈哈”
好了,吐槽就這么多了,作為Windows Phone開發(fā)者,你的選擇空間真的很小。與其停留在期期艾艾中,還不如從今天開始,面對(duì)新的變化。擁抱變化,也許是我們唯一能夠戰(zhàn)勝大公司的機(jī)會(huì)。當(dāng)大公司還在評(píng)估、調(diào)研、討論Windows Phone 8時(shí),我們已經(jīng)撣干凈身上的泥土,重新上路了。在路上,我們還可以采兩朵野花,放在諾基亞的墓碑旁,紀(jì)念一下這個(gè)曾經(jīng)的戰(zhàn)友,雖然這個(gè)不靠譜的北歐人給我們添的麻煩也不少。我們可以這樣表達(dá)自己的哀思:你妹的256M內(nèi)存,去掉6M就是你的名字!
來源:cnbeta