Harry Cheung是一名前谷歌工程師。從發(fā)表第一篇關于移動應用性能測試的博文開始,他就一直希望擴大測試范圍。近日,他將測試邏輯移植到了Objective-C和JavaScript上,前者可以作為iOS上的性能測試基準,后者可以測試webview、移動瀏覽器和Titanium。
同以前一樣,他將每個測試運行10次,然后取平均值。不過,為了增加運算量,他對測試邏輯進行了微調(測試代碼在GitHub上)。以下是此次測試的結果:
從中可以看出:
- Swift性能最佳;
- Xamarin次之,但比作為基準的Objective-C還要快30%多;
- J2ObjC的性能表現(xiàn)也不錯,它將Java代碼轉譯成Objective-C只有10%的性能損失;
- 增加Swift之后,Objective-C和J2ObjC混合應用的性能差別甚微,可見Swift橋開銷顯著;
- RoboVM已正式發(fā)布,性能出眾,可以與Objective-C媲美;
- Safari與WKWebView性能相近,均優(yōu)于Chrome和Titanium;
- JavaScript應用性能全部都明顯優(yōu)于RubyMotion;
- Android WebView應用與Chrome on Android應用性能差別較大,它們似乎使用了不同的JavaScript引擎。
感興趣的讀者可以下載查看測試結果電子表格。
感謝郭蕾對本文的審校。