王濤:你必須知道的Windows Phone
原創熟悉.NET的朋友一定聽說過《你必須知道的.NET》這本書,這本書的作者王濤先生專注于.NET底層架構和.NET平臺企業級應用,長期投入于互聯網產品開發、微軟云計算平臺、分布式系統和企業級系統架構的研究與實踐,連續三屆被評為微軟最有價值專家。最近,王濤的履歷表上又多了兩個新的身份:Windows Phone開發者和移動互聯網創業者。
(“海納”開發者、微軟MVP 王濤)
創業:移動互聯網試錯成本低
在回答為何選擇移動互聯網和Windows Phone作為創業方向的時候,王濤向51CTO記者表示,由于中國手機用戶數遠遠高于PC用戶,未來無論是從用戶群體還是移動業務上,移動互聯網產業都會有一個大的發展,而且“創業要順應潮流”,目前移動互聯網風頭正勁,“抓住機會有可能做出一些事情來”。確立了這一方向后,作為一個.NET 開發者,選擇將Windows Phone切入點則順理成章。
今年8月份,王濤和幾個朋友離職創業,開始做他們的第一款Windows Phone產品“海納”。最初的設想是做一款個性化閱讀類的應用,因為“隨著web2.0的概念出來后,人們獲取信息的方式變成推薦機制,不是我去找信息,而是信息找我”。但是,經過一段時間的研發后,他們發現,對于只有五六個人的“海納”團隊來說,要應付海量的內容有些吃力,于是他們及時做了調整,將個性化閱讀改為個性化應用推薦。兩款產品后端的推薦機制基本是相似的,所以轉型并沒有帶來很大困難。目前,定位于個性化應用推薦的“海納”第一版已經上傳到微軟Market Place,正在審核中。
“移動互聯網試錯的機會更容易”,王濤說,他表示相比互聯網產品,移動互聯網產品不論是從開發周期還是產品定位上都要“輕”一些,一次嘗試不成功,還可以很快轉到另一個。另外,由于產品從開發到投入市場的周期相對較短,你可以很快看到用戶的反應,“這對開發者來說是件很有意思的事情”。
基于云計算的移動應用
盡管從 “個性化閱讀”轉型為了“個性化應用推薦”,海納要處理的數據量仍然相當龐大。
“后端推薦服務計算量非常高”,王濤舉例說,“假設你有10萬個用戶,10萬個應用,要計算出用戶最喜歡的應用,那就是10萬乘10萬的運算量級”。對于小團隊來說,這樣的運算量級自己搭建服務器成本是很高的,此外,移動應用通常有比較大的爆發力,一款好的應用其用戶量的增長經常是幾何級的,普通服務器無法應對這樣的動態需求增長,常常令開發團隊在用戶量突增時“悲喜交加”?;趯A繑祿\算能力和彈性空間的要求,“海納”選用了微軟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應用在云端翱翔》,點擊這里報名!