企業(yè)移動應用性能遇挑戰(zhàn) 如何優(yōu)化成難題
表面上來看,移動應用性能管理是件非常困難的事。開發(fā)人員控制范圍外會出現(xiàn)許多不可控變量,影響移動應用性能,并且會給用戶帶來非常糟糕的體驗。然而,專家們認為,如果開發(fā)人員多了解一些關于移動應用開發(fā)
表面上來看,移動應用性能管理是件非常困難的事。開發(fā)人員控制范圍外會出現(xiàn)許多不可控變量,影響移動應用性能,并且會給用戶帶來非常糟糕的體驗。然而,專家們認為,如果開發(fā)人員多了解一些關于移動應用開發(fā)及性能方面的原則,就非常容易克服挑戰(zhàn)。
“移動和性能是一個龐大而可怕的話題,而實際上說它龐大而可怕是沒有理由的。”Scott Barber是坐落在佛羅里達州Palm Bay的PerfTestPlus公司的總裁及首席技術官,他說“除非你知道如何處理這個問題,否則這件事情非常具有挑戰(zhàn)性。但是到了最后,我想說其實并沒有人們所想的那么難。”
企業(yè)移動應用性能的挑戰(zhàn)
Barber說:“我們的性能挑戰(zhàn)是基于非常簡單的情況,就是努力使筆記本或者臺式機性能擺脫那種龐大卻功能較差的設備。”
Nazmi Savga是Imprezzio Global的軟件構(gòu)架師:“移動平臺與標準PC相比較弱,因此,面臨的主要挑戰(zhàn)就是要編寫一個行為像PC但是運行在移動平臺上的應用程序。”
Barber說:“不久之前,我們創(chuàng)建和交付軟件的一般方式與現(xiàn)如今申請移動應用程序的思維過程類似。”
Stephen Pierzchala是坐落在密歇根州底特律Compuware 公司的技術策略師,他認為:“在移動Web和本地移動應用兩個方面,與我們使用了很多年的臺式機中有許多相同的規(guī)則。可以將其歸結(jié)為一個原則,根據(jù)這個原則可以推廣出其他許多原則:了解你的客戶。”
了解目標對象
Pierzchala說,從移動應用性能角度來了解你的客戶,意味著要知道客戶使用的是什么瀏覽器、什么操作系統(tǒng)、設備類型及什么類型的連接。所有這些因素對應用程序都構(gòu)成限制,值得深入思考,而且是越早越好。
Barber說,理想的情況下,團隊開始考慮應用程序在概念階段所運行的目標設備或者設備組。他承認,這個過程非常困難。如果項目要六個月的開發(fā)周期,你還會為如今或者以后的移動設備構(gòu)建應用程序嗎?
Barber說:“事實是每個人都想做最新、最棒的設計,隨后他們會決定他們需要向后兼容的應用程序,這會創(chuàng)造一場噩夢。如果一開始就做出這樣的決定,還會有希望。如果后期才做出這個決定,那么你就是搬起石頭砸自己的腳。”
最新平臺上可用的特性和功能在以前的版本中未必適用,或者從一個移動平臺到另一個移動平臺也未必適用。Savga說:“架構(gòu)師應該了解應用程序?qū)谀念惼脚_上運行,應該考慮不同平臺間的差異。架構(gòu)師應該意識到這是一個受限制的平臺,或者意識到與一個標準PC相比它有許多缺陷,例如內(nèi)存和磁盤空間。”
當開發(fā)人員事前決定出應用程序?qū)\行在什么類型的操作系統(tǒng)及瀏覽器上時,Barber將這種方法與Web開發(fā)作比較。他說:“在某種意義上它只是一個過時的概念。”
網(wǎng)絡電話出現(xiàn)障礙了?
另外一個移動應用性能技巧是:總是將網(wǎng)絡流程放在后臺處理,這對于資深的開發(fā)人員來說非常熟悉。Matt Vlasach是坐落在美國亞利桑那州Mesa的Unwired Revolution公司的移動集成服務總監(jiān),該公司是一個移動解決方案開發(fā)公司,Matt Vlasach解釋說:“等待一個響應時不要阻塞UI,當正在運行這樣一個網(wǎng)絡任務時,你一定要謹慎。如果你在主線上做了任何處理,即使響應結(jié)束應用程序也會被凍結(jié)。要使用異步的Web請求,并且要恰當?shù)靥幚磉@些事情。”
Vlasach說,可以用同樣的方法來開發(fā)一個桌面或者Web應用程序。“注意‘當你正等著處理網(wǎng)絡事情時不要阻止用戶正在進行的程序。’這更復雜,需要花費更多的時間,用戶體驗開發(fā)需要更長的周期,但是在用戶體驗和實際使用中卻存在很大的差異。”
將性能介紹從業(yè)務邏輯和數(shù)據(jù)中分離出來
Savga建議開發(fā)人員和架構(gòu)師要了解三個層次,系統(tǒng)包括一個表示(或者用戶界面)層、業(yè)務層及數(shù)據(jù)層,對每一個層級的構(gòu)建都要謹慎。他說:“代碼中的功能不應該在其他層或者項目其他部分被復制。這樣做會使代碼維護容易些,同時對性能方面的維護也有幫助。”
當涉及到表示層的應用程序,架構(gòu)師需要考慮一下屏幕尺寸以及如何顯示用戶界面(UI)。如果對于所有可能的方案都采用常規(guī)設計,并用這些方案來處理UI更改,應用程序的性能將會受到影響。
Savga說:“最好的方法是根據(jù)屏幕尺寸創(chuàng)建一個不同的設計,因此,當應用程序識別出不同尺寸的屏幕時它會自行切換。否則,對于不同尺寸的屏幕都創(chuàng)建一個常規(guī)UI,在你進行用戶體驗時就會出現(xiàn)很多性能問題。”
說到這,讓我們回顧下剛開始說的原則:“要了解你的客戶是誰,以及傳遞正尋找的內(nèi)容時的能力限制是什么。”
責任編輯:和碩涵
免責聲明:本文僅代表作者個人觀點,與本站無關。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實,對本文以及其中全部或者部分內(nèi)容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關內(nèi)容。
我要收藏
個贊
-
發(fā)電電力輔助服務營銷決策模型
2019-06-24電力輔助服務營銷 -
繞過安卓SSL驗證證書的四種方式
-
網(wǎng)絡何以可能
2017-02-24網(wǎng)絡