React Native的一點(diǎn)點(diǎn)看法

? ? ? ? React Native 是由Facebook發(fā)布的開源框架,它的宣傳語是“Learn once,write anywhere”,似乎是在標(biāo)榜著React Native在手,在編程的世界里走遍天下都不怕,這消息一發(fā)出,就在開發(fā)人員內(nèi)部掀起了一陣小高潮,一些人員感激涕零的表示:跨平臺呀跨平臺,這簡直就是開發(fā)者的福音啊,另一些人員則表示:任何宣傳一技在手,走遍天下的技術(shù)都是紙老虎,沒有辦法走到最后。那么,為什么在開發(fā)人員中會出現(xiàn)這兩種截然不同的反應(yīng)呢?

但凡經(jīng)歷過跨平臺移動應(yīng)用開發(fā)的開發(fā)者都會有一種無賴的感覺—把同一套UI界面、業(yè)務(wù)邏輯在不同的平臺上各實(shí)現(xiàn)一遍實(shí)在是耗時(shí)耗力而又沒有什么創(chuàng)新的工作。多年以來,業(yè)內(nèi)很多專家都會希望能將多個(gè)移動平臺上的應(yīng)用開發(fā)統(tǒng)一到同一個(gè)框架下。但這些嘗試因?yàn)椴荒茏龅阶詈玫摹霸w驗(yàn)”而不被開發(fā)者認(rèn)同。

15年,F(xiàn)acebook公司的一幫天才工程師終于推出了React Native,測底解決了這個(gè)問題。不僅如此,F(xiàn)acebook公司還開源了整個(gè)項(xiàng)目,讓更多的移動應(yīng)用開發(fā)者能參與React Native的演進(jìn)過程,并在給自己的移動應(yīng)用開發(fā)中使用React Native進(jìn)行跨平臺移動應(yīng)用開發(fā)。

React Native 是由Facebook發(fā)布的開源框架,它的宣傳語是“Learn once,write anywhere”,似乎是在標(biāo)榜著React Native在手,在編程的世界里走遍天下都不怕,這消息一發(fā)出,就在開發(fā)人員內(nèi)部掀起了一陣小高潮,一些人員感激涕零的表示:跨平臺呀跨平臺,這簡直就是開發(fā)者的福音啊,另一些人員則表示:任何宣傳一技在手,走遍天下的技術(shù)都是紙老虎,沒有辦法走到最后。那么,為什么在開發(fā)人員中會出現(xiàn)這兩種截然不同的反應(yīng)呢?

目前,一個(gè)成熟的互聯(lián)網(wǎng)產(chǎn)品一般都有PC端和移動端兩個(gè)產(chǎn)品,那么在開發(fā)這兩個(gè)產(chǎn)品的時(shí)候,技術(shù)開發(fā)人員主要承擔(dān)三個(gè)部分的角色:一是前端開發(fā),主要用來做網(wǎng)站的頁面設(shè)計(jì)和美化的部分,他們主要涉及到的技術(shù)開發(fā)語言包括HTML、css、Js等基礎(chǔ)的Web語言,二是移動終端開發(fā),現(xiàn)在市面上主流的系統(tǒng)就是安卓系統(tǒng)IOS系統(tǒng),其中安卓系統(tǒng)主要使用Java,IOS主要使用Objective-c,三是后臺開發(fā),主要是給產(chǎn)品提供數(shù)據(jù)和服務(wù)的穩(wěn)定性,這方面的開發(fā)基本不怎么涉及界面,開發(fā)語言也是仁者見仁智者見智,有的使用Java,也有使用C++等等。這三類開發(fā)人員各司其職,互相配合,共同開發(fā)產(chǎn)品。

那么,我們可以從一個(gè)互聯(lián)網(wǎng)產(chǎn)品的開發(fā)模式中看出,一個(gè)計(jì)算機(jī)開發(fā)語言是沒有辦法獨(dú)立完成一個(gè)產(chǎn)品,它需要開發(fā)人員掌握各種技術(shù)并且嫻熟運(yùn)用,而開發(fā)人員的精力是有限的,所以一個(gè)“Learn once,write anywhere”的語言對于他們來說是迫切需要的,所以大家,就不難理解當(dāng)React Naive發(fā)布時(shí),他們難以言喻的激動心情,但是“存在即合理”,這么多語言經(jīng)過這么多年的大浪淘沙仍然存在,就證明它們是合理的,我們需要保持高度清醒。

React Native的發(fā)布雖然讓人激動,但是毫無疑問的是它并非完美無瑕,有很多缺點(diǎn)讓我們不得不重新來審視它。1.組件不全,第三方組件也不全,遇到某些特殊功能,需要搗鼓很久。2.性能并非媲美原生,還是有一些損耗的,特別是交換大數(shù)據(jù)的時(shí)候。3.ios和android代碼并非通用,有可能會需要維護(hù)兩套,或者在代碼內(nèi)做一些判斷。并非網(wǎng)上大家說的,寫一次代碼,多端通用,尤其是實(shí)際開發(fā)的時(shí)候,還是需要了解底層原理,自己開發(fā)跟原生橋接的組件,這個(gè)對普通前端來說是一個(gè)很大的挑戰(zhàn)。所以,很多開發(fā)人員都斷言React Native無法走的很遠(yuǎn)。

事實(shí)上,React Native并不像開發(fā)人員所期望的那樣一勞永逸解決了跨平臺的問題,也不像另一些人員預(yù)料的那樣見光死,相反,它正以著自己的腳步向前發(fā)展。在Facebook F8開發(fā)者大會上,在和三星、微軟的合作下,React Native應(yīng)用能夠?yàn)閃indows、Xbox、智能電視和可穿戴設(shè)備編譯使用。微軟現(xiàn)已支持在Universal Windows Platform(UWP)平臺上使用React Native框架,同樣那些為Windows編譯的應(yīng)用程序也能訪問React Native工具。

最后想說的是,這是一個(gè)互聯(lián)網(wǎng)的時(shí)代,相信隨著未來的發(fā)展,互聯(lián)網(wǎng)開發(fā)生態(tài)會積累出更加優(yōu)秀的框架,不管是React Native還是其它框架,它們一定會支撐更加偉大的產(chǎn)品出現(xiàn)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,175評論 25 708
  • React Native學(xué)習(xí)<一> 認(rèn)識Recat Native 博客原文:http://www.jianshu....
    AFinalStone閱讀 2,823評論 0 12
  • 我以為我已經(jīng)戰(zhàn)勝了自己,我以為自己足夠強(qiáng)大,我以為我可以不需要男人,我以為變成了獨(dú)立女性,我還沾沾自喜,覺得無所不...
    陌上扶桑閱讀 255評論 8 3
  • 《我頌揚(yáng)》 我頌揚(yáng) 那古絲綢的家園; 那嘉陵桑郁郁蔥蔥; 那蠶婦背上滿帶傷痕的背簍; 那布滿經(jīng)緯的額頭; 那被歲月...
    winner永勤閱讀 202評論 0 0
  • 前幾天我和外婆一起去逛超市,在文具區(qū)看到了這個(gè)大富翁游戲,于是我就把它買了下來。 這兩天,下午的閱...
    33小溪流王銘銳閱讀 650評論 0 0

友情鏈接更多精彩內(nèi)容