Silverlight跨平臺(tái)實(shí)現(xiàn)技巧總結(jié)
Silverlight跨平臺(tái)的特性在開發(fā)人員嚴(yán)重時(shí)一個(gè)非常重要的特點(diǎn)。那么我們?nèi)绾尾拍苷_的實(shí)現(xiàn)Silverlight跨平臺(tái)呢?正如微軟在其專業(yè)開發(fā)者大會(huì)上所表示的那樣,他們會(huì)不斷給Silverlight增加新特性和功能。 #t#
對(duì)于那些因?yàn)榈降资鞘褂肳indowsPresentationFoundation(WPF)還是Silverlight開發(fā)Windows應(yīng)用程序而感到糾結(jié)的開發(fā)人員來說,微軟的生命知道在混沌中給了他們一些光明。不過,一些觀察家卻指出,微軟的這一策略存在一個(gè)缺點(diǎn)。把COM技術(shù)融合到Silverlight中,微軟實(shí)際上破壞了Silverlight是一個(gè)支持Windows、Mac跨平臺(tái)瀏覽器插件這樣一個(gè)之前所承諾的事情。
將于2010年中發(fā)布的Silverlight4---微軟最新的Web應(yīng)用框架/插件---承諾支持COM對(duì)象,只適用于運(yùn)行在Windows平臺(tái)上的Firefox或InternetExplorer。無論是MacOSX還是Linux都不支持COM。
微軟的官員們很快指出,新增的支持COM組件特性是應(yīng)客戶的需求,而不是微軟的個(gè)人意愿。當(dāng)被問到關(guān)于其保持Silverlight同步的跨平臺(tái),微軟一位發(fā)言人說:
"為了滿足客戶的功能需求,我們給Silverlight4增加了8000多個(gè)功能。其中一個(gè)具體的客戶請(qǐng)求就是增加對(duì)訪問COM組件的支持,以便能夠讓開發(fā)人員輕松訪問一些
Silverlight跨平臺(tái)硬件功能,比如掃描器和安全智能卡閱讀器。"
微軟官員表示,他們正在研究如何將某些COM組件訪問增加到Mac版本的Silverlight中。上述發(fā)言人表示:
"不幸地是,Mac并提供COM接口,我們正在積極對(duì)于在Mac平臺(tái)中增加類似于COM的功能進(jìn)行方案評(píng)估。"
但是,關(guān)于如何以及什么時(shí)候能夠讓Mac版Silverlight支持COM,微軟沒有進(jìn)一步表示。
同時(shí),Novell的開發(fā)平臺(tái)副總裁MigueldeIcaza則似乎更加急切地想為Moonlight---微軟和Novell合作開發(fā)的Silverlight的開源版本---添加Silverlight4相同的功能。Icaza表示:
"對(duì)于Moonlight團(tuán)隊(duì)來說,Silverlight4的發(fā)布意味著有更多工作要做,我們要把Silverlight的3和Silverlight4的各項(xiàng)功能整合到Moonlight中。當(dāng)我在PDC2009上表示‘Silverlight4的發(fā)布令我非常激動(dòng)、著魔和吸引,就像剛剛應(yīng)用了一倍功能飲料一樣’,其實(shí)我是表達(dá)了整個(gè)Mono團(tuán)隊(duì)的心聲。"
微軟發(fā)布Silverlight4這一舉動(dòng)意味著Silverlight正在向微軟的通用語言運(yùn)行庫(CLR)發(fā)展,CLR正式.Net框架的核心。開發(fā)Silverlight應(yīng)用程序的桌面套件不是一個(gè)白日夢(mèng),deIcaza說,它是一個(gè)真正可行的項(xiàng)目。
有些開發(fā)人員已經(jīng)開始憧憬Silverlight操作系統(tǒng)。但是微軟更迫在眉睫的問題是:如果想要繼續(xù)在這個(gè)市場上"玩"下去,微軟必須讓Silverlight跨平臺(tái)持續(xù)下去。