如果你關心競品對比,這里有幾份詳盡對比:
uni-app收費嗎?
uni-app 是免費并且屬于Apache2.0開源協(xié)議的產品。DCloud官方承諾永遠不會變更開源協(xié)議。無論HBuilderX、uni-app、App,面向中國人永久免費。大家可以放心使用。
DCloud的盈利方式在幫助開發(fā)者進行推廣和流量變現(xiàn)上,而不在開發(fā)工具收費上。
跨端會造成功能受限制嗎?
uni-app在跨平臺的過程中,不犧牲平臺特色,不限制平臺的能力使用。
應用開發(fā)中,90%的常規(guī)開發(fā),比如界面組件、聯(lián)網(wǎng)等api,uni-app封裝為可跨多端的API。
各個端的特色功能,uni-app引入條件編譯??梢詢?yōu)雅的在一個項目里調用不同平臺的特色能力。比如push,微信小程序里不支持,但可以在App里使用,還有很多原生sdk,在App時難免涉及,這些都可以正常的在uni-app框架下使用。
下圖是uni-app產品功能框架圖,uni-app在保持uni規(guī)范跨平臺的前提下,還可實現(xiàn)每個平臺特有的平臺能力(如微信小程序平臺,可繼續(xù)調用微信卡劵等微信特有業(yè)務API)。
在做小程序時,小程序所有的api都可以使用;而輸出到App時,原生渲染引擎、原生sdk集成和混寫都支持,使得原生的所有api都可以使用。
同時注意,條件編譯不同于代碼里if邏輯判斷。條件編譯塊里的代碼或指定的文件,只有在特定平臺才會被編譯進去,不會把不能用的其他平臺代碼混在一個包里。如果大量使用if判斷,會增大體積和影響性能,而條件編譯則沒有這些問題,減少包體積,減少互相的干擾。
uni-app的手機端用戶體驗如何?
使用uni-app開發(fā)的微信小程序,因為智能的處理的數(shù)據(jù)的diff,比大多人手寫的原生小程序的性能還好。詳細數(shù)據(jù)評測參考:https://juejin.im/post/5ca1736af265da30ae314248
uni-app打包成App后,支持webview渲染和weex原生渲染這2種引擎,可以任由開發(fā)者切換使用。
由于有豐富的插件市場,以及支持所有小程序SDK在App端的使用,使得uni-app擁有更龐大的應用生態(tài)。
只開發(fā)小程序,需要uni-app嗎?
是的,單獨開發(fā)小程序,也應該使用uni-app。它比其他小程序框架或原生小程序開發(fā)更有優(yōu)勢。原因如下:
只開發(fā)App,需要uni-app嗎?
uni-app是更好的跨平臺開發(fā)框架,開發(fā)一次iOS、Android都有了。體驗好、開發(fā)效率高。
uni-app在App端,基于能力層/渲染層分離的架構設計(見下圖),渲染層是webview和weex二選一,能力調用都是共同的plus api,比如藍牙、掃碼等能力;也就是weex被內置到uni-app中,并且被強化了。
過去weex有個很大的問題是api太少,開發(fā)時必須iOS、Android原生和前端3撥團隊協(xié)作開發(fā),實際上react native也如此,因為他們的核心只是高性能渲染器。
plus api的結合解決了這個問題,大多數(shù)App的開發(fā)不再需要原生介入了,從而把跨平臺開發(fā)省成本這個核心目的落地了。
uni-app在App側可以使用豐富的小程序sdk,如網(wǎng)易云信、環(huán)信、七牛等眾多sdk廠商均原廠維護其小程序sdk版本,而這些sdk均可直接用于uni-app并發(fā)布為iOS、Android的App。
uni-app的插件市場里有非常多的ui庫、組件、模板,可以大幅提升開發(fā)效率。
相比純原生開發(fā),uni-app體驗可商用,也不會限制功能調用,但開發(fā)效率和開發(fā)成本更優(yōu)于原生開發(fā)。
如果你已經(jīng)有了原生App,那么可以局部使用uni-app,內嵌SDK,讓工程逐步跨平臺化。
uni-app是多端寫在一個項目統(tǒng)一升級維護,還是每個端不同的項目,只復用部分代碼
uni-app是多端寫在一個基礎項目下,差異使用條件編譯來管理。
這有個巨大的好處是一套工程代碼,升級時可多端同時更新。
如果把不同端的項目分開,那么維護升級時非常麻煩,無法方便同步升級。
所以uni-app開發(fā)微信小程序時,不止編碼,包括域名校驗等配置均在HBuilderX里完成,不需要在微信開發(fā)者工具里二次調整。
uni-app 學習成本高嗎?基于什么技術棧?
uni-app簡單來說是 vue的語法 + 小程序的api。
它遵循Vue.js語法規(guī)范,組件和API遵循微信小程序命名,這些都屬于通用技術棧,學習它們是前端必備技能,uni-app沒有太多額外學習成本。
有一定 Vue.js 和微信小程序開發(fā)經(jīng)驗的開發(fā)者可快速上手 uni-app 。
沒學過vue的同學,也不用掌握vue的全部,只需了解vue基礎語法、虛擬dom、數(shù)據(jù)綁定、組件、vuex,其他如路由、loader 不用學,cli、node.js、webpack也不需要學。
官方有入門培訓視頻,且還有眾多培訓渠道加入uni-app生態(tài),可參考培訓教程資源匯總。
uni-app 開發(fā)體驗如何?支持現(xiàn)代前端開發(fā)流程嗎?
uni-app 積極擁抱社區(qū)現(xiàn)有的現(xiàn)代開發(fā)流程,包括但不限于:
uni-app 生態(tài)開放性如何?能否直接利用現(xiàn)有前端社區(qū)資源?
uni-app 提供了開放性的生態(tài):
需要注意的是,uni-app 采用Vue.js方案,限制了dom操作,因此所有基于dom的前端庫都無法直接使用;所幸的是目前基于微信小程序的庫已經(jīng)非常多了,這個生態(tài)也很完善,所有微信小程序的庫在uni-app 里都能用,不止是在微信里能用,在App下也能用。
uni-app 支持的手機版本最低到多少?
Android4.4、iOS8是官方會保障兼容的。 要知道Android4.4已經(jīng)是2013年發(fā)布的手機了,正常用戶不會還在用這么久遠的手機。
uni-app成熟度高嗎?
uni-app是目前最成熟的多端開發(fā)框架,已迭代幾十個版本,擁有幾十個開發(fā)者交流群,幾十萬應用案例。
阿里小程序IDE官方內嵌uni-app,uni-app沒有讓阿里巴巴失望,也不會讓你失望。詳見:https://ask.dcloud.net.cn/article/36485
uni-app的社區(qū)活躍嗎?
加入uni-app的群就知道,幾十個QQ/微信群每天數(shù)萬條聊天記錄,非?;钴S。論壇里每天數(shù)百個帖子。
插件市場內容也非常豐富,各種輪子方便可用。https://ext.dcloud.net.cn/,并且很多輪子的uni-app版,性能功能都強于微信小程序版。
基于uni-app的三方培訓也很多。騰訊課堂官方親自為uni-app制作了課程。
uni-app 有哪些已上線的成功案例?
開發(fā)者分享的案例參考uni-app 應用案例
DCloud是家什么公司,是否可信賴
DCloud從2013年開始做HBuilder,目前380萬前端開發(fā)者在使用DCloud的開發(fā)工具,HBuilder百度指數(shù)與sublime、webstorm等全球知名工具相同。是中國唯一一家成功的開發(fā)工具廠商。
DCloud是明星創(chuàng)業(yè)公司,融資已經(jīng)過了B2輪,且均為知名VC或戰(zhàn)略投資人。
DCloud是HTML5中國產業(yè)聯(lián)盟的發(fā)起單位和秘書單位。該聯(lián)盟隸屬于工信部信通院標準所。
DCloud產品中使用的HTML5Plus規(guī)范,為聯(lián)盟的標準規(guī)范而非私有api。
DCloud的產品技術一直引領業(yè)內,2015年就上線業(yè)內第一個"小程序":DCloud流應用。隨后DCloud廣泛推動業(yè)內各大公司上線"小程序",普及該技術廣泛應用。
數(shù)年來只有其他公司侵權DCloud,這些作惡公司已被法院判決給DCloud賠款道歉,DCloud從未有劣跡,誠信立足于行業(yè)。
阿里小程序IDE官方內嵌uni-app,uni-app沒有讓阿里巴巴失望,也不會讓你失望。詳見:https://ask.dcloud.net.cn/article/36485
App打包必須上傳DCloud云端嗎?代碼會泄露嗎?
代碼可以云打包,也可以離線打包。
即使使用云打包,DCloud也不會保留開發(fā)者的代碼,云端打包完成后程序不會持久化存儲相關文件,DCloud不愿也不敢沾惹這方面的麻煩。
之所以提供云打包,是方便不熟悉原生的前端工程師直接生成App安裝包。包括讓沒有mac電腦的工程師也可以打出iOS的包。
DCloud提供哪些技術支持?碰到框架bug影響業(yè)務怎么辦?
uni-app 是DCloud全力打造的重點產品,不是非專業(yè)公司的KPI項目。不會因為某些負責人的流動導致框架爛尾。 uni-app 的github上的dev分支是日更的,可隨時修復bug。并且作為開源產品,開發(fā)者也可以修改源碼。 uni-app 的app引擎,支持原生擴展,只要你會原生擴展,就不怕app引擎有限制,大不了自己補一個原生插件進去。 uni-app 開發(fā)小程序,無需依賴微信等平臺升級。它們升級后,uni-app是可以直接使用的,不需要等待uni-app升級才能使用微信的新功能。
開發(fā)者碰到問題,可以通過如下途徑進行反饋交流:
另外,如果您確實需要商業(yè)化的保障才安心,也可以申請付費技術支持。
大型互聯(lián)網(wǎng)公司發(fā)布的開源框架,是不是更有影響力?
大型互聯(lián)網(wǎng)公司在自用某個項目時,解決了某個問題,把它摘出來開源,這個是眾多大公司開源項目的來源和初衷。
而之所以把內部自用的框架開源出來,基本是為了在技術圈塑造形象和威望。對團隊而言,有助于招聘;對負責人個人而言,有助于晉升和提升名氣。
這類開源項目被戲稱為KPI項目,往往逃不開4個魔咒:
而DCloud這家公司就是為開發(fā)者而生的,優(yōu)秀的人才和資源全部是為開發(fā)者服務的,產品立項之初廣泛調研不同開發(fā)者的需求,產品發(fā)布后持續(xù)迭代,讓開發(fā)者們使用的更便利。
更多建議: