hybrid app、web app与native app工具
1.使用過哪些工具?
Webapp:ThinkPHP Mobile(TPM)、Ionic Framework、JingleUI
Hybridapp:Apicloud、Phonegap(稍了解Hbuilder、Appcan、Wex5)
Nativeapp:CrossApp、React-Native、Xcode、Eclipse-ADT/Android Studio
?
2. 以上工具各自的編程語言是?
Webapp:主要使用H5(html5、css3、js)語言規范來編寫,對JS語言掌握要求較高
Hybridapp:同Webapp使用H5作為主要編程語言,JS將作為主力連接原生SDK模塊
Nativeapp:
1)Xcode、Eclipse-ADT/Android Studio:使用Objective-c/swift、Java
2)CrossApp:主要使用C++來進行跨平臺編寫,JS(已經支持,不過仍處于測試階段)
3)React-Native:主要使用JS編寫,語法規則JSX
?
3.以上工具的上手難度、開發周期、打包平臺、跨平臺屬性是?
1)上手難度:
Hybridapp/Webapp:寫一次,運行任何平臺。簡單
React-Native:學一次,寫任何平臺。中等
Nativeapp:學一次,只限運行特定平臺。較難
2)開發周期:
Webapp:2~3周
Hybridapp:由于第三方工具兼容性、bug處理問題、調用js-原生模塊(熟悉文檔),開發周期在2個月左右
React-Native:1個半月~2個月
Nativeapp:各1個半月~2個月
3)打包平臺
Webapp:無,可借助微信開放/公眾平臺分發。成本低;自由度高
Hybridapp:第三方工具的在線打包。成本低;自由度低
React-Native:原生Xcode、Eclipse-ADT。Xcode需購買支持OSX操作系統的主機,成本略高;自由度高
Nativeapp:原生Xcode、Eclipse-ADT/Android Studio。Xcode需購買支持OSX操作系統的主機,成本略高;自由度高
4)跨平臺
Webapp:H5分發平臺
Hybridapp:跨iOS、Android、Wp(PhoneGap支持)多平臺
React-Native:跨iOS、Android雙平臺
Nativeapp:不跨平臺
?
4.Hybridapp與Native app相比,性價比如何?
時代在發展,Html5規范也在完善,尤其是W3C敲定Html5標準之后,但是現實真的有那么美好嗎?
筆者使用Apicloud,從發布到今天已有一年多,apicloud相對其他混合式app工具,是同類較好的,但這并不能掩飾h5作為app 開發的局限性。
1)混合式app的用戶體驗
頁面與頁面之間的切換,也稱轉場動畫。隨著手機硬件系統的更新換代,webview已有很大程度的提升,但即使是在iphone 6/6s plus上仍然是假性生硬切換,即使無卡頓。那么要做到諸如微信般切換已然無可能。
iOS系統如此,安卓系統情況亦不明朗。而由于混合式app依賴模塊實現原生交互,在沒有大量模塊實現的情況下,需要使用html5-js來代替,體驗更是大打折扣。
2)UI開發受限
許多創業公司由于產品交互需求,需要將app ui做到配色一致或更個性化(如帶卡通下拉刷新),而混合式app的模塊UI已寫固定,自由化UI定制難。
3)集成第三方sdk
混合式app想要使用第三方sdk,首先要使用的工具平臺支持,如果平臺不支持,要么你請人寫iOS/android模塊,要么就是等。倘若新集成的sdk出現bug,你所能做的也是等,并沒有其他好的辦法。
?
5.針對這些工具,學習路線是?
我在一些混合app 開發群里,看到過很多web開發新轉行的同學,問題沒有看明白,就直接提問,我覺得這種做法會影響自身的開發效率。以下講講學習混合式app的學習路線:
1)搭建IDE環境
針對Win/OS X選取不同的開發環境工具包,并生成第一個示例app,hello world!
2)看教程
Html5教程推薦:www.w3school.com.cn
在第三方工具的開發者社區看置頂教程帖子或視頻教程,文字的教程可以多看,視頻的教程看看就好,畢竟每個人的思路都是不同的
3)看技術文檔
到這個階段,你要正式開發app了。文檔里的方法不用記得太詳細,建議邊寫邊看邊調試。混合式app的調試需要同步到手機,這點可能有點麻煩。推薦使用海馬玩模擬器進行在線調試。
4)看開源代碼
任何編程語言都有互通性,而看開源代碼就是必修課了。好的開源代碼能讓你進步神速。
?
6.對web開發者轉型的建議
同為多年web開發,轉型不易,一要考慮工具要像腳本語言如此便捷效率;二要考慮能否媲美原生app。
我的建議是:
以hybrid app為基礎,觀望crossapp-js部分,條件允許使用react-native(來自facebook,一直在更新)。
?
?
?
hybrid app、web app、native app之間的比較分析就到這里,如果還有補充,會繼續更新。
?
擴展閱讀
國內主流Hybrid app工具平臺推薦:https://blog.csdn.net/ciupasswort/article/details/49563445
hybridapp/webapp的前端UI框架推薦:https://blog.csdn.net/ciupasswort/article/details/49564803
?
轉載于:https://www.cnblogs.com/yi-snow-W/p/10709692.html
總結
以上是生活随笔為你收集整理的hybrid app、web app与native app工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络攻防第七周作业
- 下一篇: Method Swizzling 为什么