跨平臺(tái)工具詳解:MoSync
主要產(chǎn)品和技術(shù)
MoSync允許開(kāi)發(fā)者使用C++、HTML(最近才支持)或者JavaScript來(lái)為iOS、Android、Windows Phone 7、Symbian、Java ME、Windows Mobile和Moblin(BlackBerry支持)平臺(tái)進(jìn)行開(kāi)發(fā)。開(kāi)發(fā)者能通過(guò)MoSync精簡(jiǎn)庫(kù)調(diào)用本地設(shè)備API,開(kāi)發(fā)的App還能應(yīng)用本地的UI控件。為Android設(shè)備做開(kāi)發(fā)時(shí),MoSync可以創(chuàng)建Dalvik字節(jié)碼,不過(guò)也能在使用Java-Native界面和NDK時(shí)直接工作于C++層面。
MoSync已經(jīng)被整合進(jìn)Eclipse中,計(jì)劃也將被整合進(jìn)Visual Studio中。MoSync IDE允許開(kāi)發(fā)者有超過(guò)2400種目標(biāo)設(shè)備,它們的大多數(shù)都是Java ME的變種。開(kāi)發(fā)者可以調(diào)用任何仿真器,包括本地平臺(tái)的仿真器,或者M(jìn)oSync提供的MoSync Reference Environment。
MoSync使用了一個(gè)定制的C++編譯器。這個(gè)編譯器輸出MoSync Intermediate Language。之后,這種語(yǔ)言的代碼和程序相關(guān)資源,以及用到的MoSync庫(kù)一起被送入“pipe tool”中。“pipe tool”創(chuàng)建代碼樹(shù),分析優(yōu)化并輸出C/C++源代碼,MoSync字節(jié)碼或者Java字節(jié)碼。這之后被某種適用于平臺(tái)的運(yùn)行時(shí)封裝,MoSync宣稱這會(huì)有100Kb左右的運(yùn)行信息。值得一提的是,MoSync能為很多設(shè)備創(chuàng)建二進(jìn)制碼,這包括沒(méi)有各自SDK的Android設(shè)備。
MoSync能提供一個(gè)開(kāi)源環(huán)境下(GPLv2)的認(rèn)證,一個(gè)免費(fèi)的個(gè)人認(rèn)證,和兩個(gè)商業(yè)上的專業(yè)認(rèn)證(***需要199歐元)。開(kāi)發(fā)者非常喜歡這個(gè)免費(fèi)的個(gè)人認(rèn)證方案,我們的調(diào)查顯示68%的人認(rèn)為這是讓他們選擇MoSync的關(guān)鍵因素(類似因素對(duì)應(yīng)的平均比例是31%)。
市場(chǎng)影響力
根據(jù)MoSync所說(shuō),這個(gè)工具有18萬(wàn)的下載量和2萬(wàn)的注冊(cè)用戶。用戶包括Gemalto,Stockholm City,Penvision,BS集團(tuán)(銀行領(lǐng)域),Intel和Navtech。MoSync也提到,軟件的***次發(fā)布實(shí)在2011年9月,他們十分期待看到更多基于MoSync的App在接下來(lái)的2-4個(gè)月里進(jìn)入市場(chǎng)。
市場(chǎng)定位
MoSync的市場(chǎng)主要定位于進(jìn)行企業(yè)應(yīng)用開(kāi)發(fā)和高度邏輯中心的開(kāi)發(fā)者。這個(gè)定位和某些工具比較相似,比如Xamarin(MonoTouch),雖然MoSync使用C++而Xamarin使用C#.NET;也比如Appcelerator,雖然MoSync更偏重C++實(shí)現(xiàn)的程序邏輯編碼。Aqua Platform提供了一個(gè)基于C++不包括游戲應(yīng)用的開(kāi)發(fā)平臺(tái),平臺(tái)的展示架上展示了很多適用于不同種類App的功能應(yīng)用。通過(guò)使用互聯(lián)網(wǎng)技術(shù),如Sencha 2.0,MoSync將會(huì)更加有競(jìng)爭(zhēng)力。不過(guò)面對(duì)相似種類的App開(kāi)發(fā)工具時(shí),MoSync并不像Worklight一樣是一個(gè)完整的平臺(tái)解決方案,也不像Netbiscuits一樣是一個(gè)輕代碼的互聯(lián)網(wǎng)App開(kāi)發(fā)解決方案。
MoSync宣稱自己是涵蓋設(shè)備平臺(tái)最廣的開(kāi)發(fā)工具之一,這些平臺(tái)包括iOS,Android, Windows Phone 7, Symbian, Java ME和“很快就會(huì)支持”的BlackBerry。我們的調(diào)查顯示,70%的MoSync開(kāi)發(fā)者表示平臺(tái)的涵蓋范圍是一個(gè)影響工具選擇的因素。而調(diào)查中顯示,除了熱門(mén)的iOS和Android,MoSync開(kāi)發(fā)者為Windows Phone做開(kāi)發(fā)的比例是其他平臺(tái)開(kāi)發(fā)者的大致兩倍,為Symbian做開(kāi)發(fā)的比例是4倍。
MoSync中編程的核心語(yǔ)言是C++,最近也增加了HTML和JavaScript來(lái)迎合更多的開(kāi)發(fā)者。這款工具有很寬的應(yīng)用范圍,在用于通信和社交App開(kāi)發(fā)的比例上,是其他工具平均值的2倍。我們的調(diào)查還顯示MoSync經(jīng)常吸引經(jīng)驗(yàn)豐富的開(kāi)發(fā)者,19%的MoSync開(kāi)發(fā)者有7年以上的開(kāi)發(fā)經(jīng)驗(yàn),而其他軟件的平均值是10%。


















 
 
 
 
 
 
 