首頁>>廠商>>軟件開發(fā)商>>微軟

智能連接的電子設(shè)備(三):用戶體驗

Mike Hall 2011/03/21

  本文是Mike Hall署名文章的第三篇,主要探討新興技術(shù)的發(fā)展趨勢是如何影響嵌入式設(shè)備開發(fā)者的。

  我們已經(jīng)探討了在“連接”一個設(shè)備的時候會遇到哪些挑戰(zhàn),以及芯片、硬件與軟件的發(fā)展趨勢會給那些將智能、連接設(shè)備推向市場的開發(fā)者們帶來什么樣的挑戰(zhàn)。在本文中我們將重點關(guān)注設(shè)備的用戶體驗。

微軟Windows Embedded事業(yè)部首席軟件架構(gòu)師 Mike Hall

圖:微軟Windows Embedded事業(yè)部首席軟件架構(gòu)師 Mike Hall

  用戶體驗已經(jīng)隨著時間的發(fā)展產(chǎn)生了演變,從命令行的輸入,到簡單的輸入/輸出設(shè)備的2D圖形界面,再到支持語音輸入、觸控和多點觸控及手勢,還有3D用戶界面的設(shè)備。用戶期待他們設(shè)備的用戶體驗是反應(yīng)靈敏、栩栩如生、優(yōu)美流暢、身臨其境并且是直截了當(dāng)?shù)摹R⒁獾氖,我們所討論的是用戶的體驗,而非用戶界面:全部的體驗顯然不僅包括了用戶界面(用戶能看到的內(nèi)容),而且也包括了用戶如何與設(shè)備交互以及設(shè)備的導(dǎo)航方式(使用輸入及輸出設(shè)備),還有用戶如何配置設(shè)置/首選項及與其他設(shè)備的連接。

  對于一個新設(shè)備用戶,用戶可能首先會查看設(shè)備的外殼或者應(yīng)用程序加載器(請注意,某些設(shè)備啟動后只能運行一個單一的應(yīng)用程序,這可以被當(dāng)作是一種“外殼”)。應(yīng)用程序或外殼可以被分為兩個獨立的技術(shù)模塊,即用戶界面(用戶能看到的內(nèi)容)與應(yīng)用程序邏輯(應(yīng)用程序的粘合劑或者商業(yè)邏輯)。將用戶體驗從基礎(chǔ)邏輯中分離出來并不新鮮;Model View Controller的概念早些時候就已經(jīng)存在了,并且可以很容易在一些編程模型里見到,比如Microsoft Foundation Classes,它可以將一個應(yīng)用程序分成一系列獨立的類別(應(yīng)用程序、文件、視圖、框架等);還有Silverlight,它清晰地將用戶界面設(shè)計與基礎(chǔ)應(yīng)用程序開發(fā)分離了,因此設(shè)計者與開發(fā)者的工具鏈?zhǔn)歉髯元毩⒌摹?br />
  將用戶界面設(shè)計與應(yīng)用程序編碼開發(fā)清晰地分離后,我們就可以創(chuàng)建兩條平行的開發(fā)路線,一條負責(zé)用戶體驗,另一條則負責(zé)基礎(chǔ)程序/商業(yè)邏輯。這樣做的好處就是可以讓設(shè)計者根據(jù)既有的用戶體驗來開發(fā)外觀、性能、品牌與情感連接;而軟件開發(fā)者則可以側(cè)重于開發(fā)應(yīng)用程序/外殼的基礎(chǔ)功能,包括互聯(lián)性(包括與網(wǎng)絡(luò)服務(wù)的合作)、部署、安全保護,當(dāng)然還有與用戶界面層的交互。要注意的是,軟件開發(fā)者不會直接創(chuàng)建或展示用戶界面的元素,而是使用設(shè)計者開發(fā)與公開的用戶體驗的元素。

  要想讓設(shè)計者能獨立于軟件開發(fā)流程工作,就需要一套工具。這套工具可以讓設(shè)計者創(chuàng)建便于軟件開發(fā)者使用的用戶界面元素;而設(shè)計者會反復(fù)改進已有的設(shè)計,這樣開發(fā)者也可以方便地使用這些變化與更新的內(nèi)容。

  讓我們以Windows Embedded Compact 7為例來說明設(shè)計者與開發(fā)者是如何獨立工作,但又通過“合作”來設(shè)計與完成一次身臨其境的用戶體驗的。設(shè)計者先用Expression Blend創(chuàng)建一個Silverlight項目。項目會對用戶體驗進行定義,但設(shè)計者無需擔(dān)心基礎(chǔ)代碼——因為設(shè)計者關(guān)注的是外形、用戶體驗、時間點、事件、動畫以及用戶界面資源。開發(fā)者主要關(guān)心的是用戶體驗中出現(xiàn)的事件;以及用戶界面中出現(xiàn)的回放,開發(fā)者以此給終端用戶提供信息。例如,設(shè)者可以創(chuàng)建一個動畫并在運行一項耗時進程的時候播放給用戶(比如從網(wǎng)絡(luò)服務(wù)中提取內(nèi)容或解析數(shù)據(jù)并展示給用戶)。開發(fā)者只需知道動畫的存在并調(diào)用即可。開發(fā)者可以使用諸如Visual Studio與Platform Builder這樣的工具來將設(shè)計者制作的項目融合進他們的設(shè)計。

  對許多設(shè)備來說,用戶體驗與互聯(lián)性是緊密相連的。一個依賴互聯(lián)性從網(wǎng)絡(luò)服務(wù)中提取資料的設(shè)備,在沒有數(shù)據(jù)連接的時候就不那么有用了。因此,將數(shù)據(jù)存儲在本地的能力對于那些非實時網(wǎng)絡(luò)連接的設(shè)備就十分重要了。我們已經(jīng)講述了將用戶體驗(設(shè)計工作)與基礎(chǔ)應(yīng)用程序代碼(開發(fā)工作)清楚地分離開對于用戶要求的豐富而身臨其境的體驗是十分重要的。對于開發(fā)者來說,如何將他們的代碼與用戶體驗結(jié)合起來也非常重要:同步的編碼方法會妨礙用戶體驗并導(dǎo)致設(shè)備運行起來看似沒有反應(yīng),顯然,這不是什么美妙的用戶體驗。開發(fā)者應(yīng)該考慮使用異步的編碼方法來保持用戶體驗的響應(yīng)與“活力”。當(dāng)越來越多的應(yīng)用程序與服務(wù)轉(zhuǎn)向云的時候,這一點就顯得尤為重要。

電子工程專輯



相關(guān)閱讀:
智能連接的電子設(shè)備(一):實現(xiàn)互聯(lián)性 2011-03-21
微軟攜RIM將為黑莓設(shè)備提供免費Office 365 2011-03-21
智能連接的電子設(shè)備(二):硬/軟件發(fā)展趨勢帶來的挑戰(zhàn) 2011-03-21
微軟將借助Mediaroom 2.0打開亞洲IPTV市場 2011-03-18
微軟Office15將整合Facebook即時通訊服務(wù) 2011-03-18