RN(一) 為什么要學習RN

前言

學習React Native有一段時間了莫辨。因為學著學著容易忘記的特性,于是記錄一下學習過程中個人的總結(jié)。文章以ES6為標準開發(fā)(ES7特性還沒來得及看)椅贱。本人是一個純iOS開發(fā)别瞭,所以適配上主要會以iPhone為主窿祥,安卓在后面也會提到。文章有什么錯誤及不足的地方蝙寨,歡迎各位指正晒衩!謝謝!

文章主要目錄:

  • (一)為什么要學習RN墙歪?
  • (二)開發(fā)的準備與基礎了解

為什么要學習RN

作為一個移動端開發(fā)听系,對ReactNative(以下簡稱RN)的大名可以說是如雷貫耳了。自從Facebook在2015年的F8大會上宣布以來虹菲。這個項目在GitHub已經(jīng)幾萬的star和上萬的fork了靠胜。作為一個開源組件,關注度可以說是極高的毕源!不過最初的RN僅僅是對iOS的支持浪漠,不過隨著微軟,三星等各個大佬的入伙霎褐。主流的iOS和Android支持度已經(jīng)很好了址愿。而且對于Windows Phone等其他平臺的開發(fā),也都在如火如荼的進行中冻璃。

牛逼吹過了响谓,現(xiàn)在我們來理性的分析一下RN的優(yōu)劣。

作為一種技術俱饿,他也僅僅是一種技術手段而已歌粥。作為使用者,我們不必去了解其底層的實現(xiàn)(當然拍埠,能夠了解自然是最好的)失驶。RN主要是提供了一種多平臺同時運行的語言環(huán)境。RN的口號是:Learn Once枣购,Write AnyWhere嬉探。恩,很熟悉的口號棉圈,記得當初在大學里面學Java的時候似乎也是差不多:Write Once涩堤,Run AnyWhere。確實很像分瘾,但是實際上他們是完全不一樣的胎围!對于Java來說,他擁有強大的虛擬機,使得他能夠在任何平臺上都可以通過JVM跑起來白魂,減低的是開發(fā)成本汽纤。畢竟只要Write Once!但是RN的口號是Learn Once福荸。說的通俗點蕴坪,就是學起來炒雞簡單。至于各個品臺的適配等工作敬锐,就慢慢自己折騰吧背传!當然這個也和移動端設備的千奇百怪有關,不同設備從硬件到軟件的環(huán)境都可能不同台夺。比如Android有返回等物理按鍵径玖,但是iPhone就沒有這樣的按鈕。等等類似的這種情況都使得我們不得不單獨做適配谒养。但是縱然如此挺狰,也改變不了RN具備強大的跨平臺行的特點,我們可以先來看看RN的應用架構(gòu)买窟。

Xnip2018-03-74_10-31-20.jpg

我們可以很清楚的看到丰泊,我們通過RN開發(fā)的應用最終的實現(xiàn)形式依然是原生代碼,和原始混合應用(原生+WebView)的優(yōu)勢就體現(xiàn)出來了始绍。

  • RN在跳過了原生平臺繁瑣API學習成本的同時瞳购。其高效和跨平臺的優(yōu)勢也很明顯。
  • 在各大廠商和全球開發(fā)者的監(jiān)督下亏推,穩(wěn)定性與性能和原生平臺的近似学赛。
  • 對于線上的Bug和緊急需求,其具備快速發(fā)布的能力吞杭。

說完了優(yōu)勢盏浇,自然也要說說他的劣勢了。

  • 作為一個由Facebook維護的三方庫芽狗。其更新完全依賴于Facebook绢掰,如果哪一天不更新了。事實上很多火爆一時的第三方庫童擎,最后因為無人維護滴劲,被開發(fā)者丟棄。但是有一點是不會變的顾复!一門具備跨平臺的高性能是被市場所需求的班挖。不過就目前的發(fā)展情況而言,RN社區(qū)的活躍度及市場對于RN開發(fā)的需求還是很大的芯砸。
  • 不成熟性萧芙。RN目前最新版本是0.51给梅。這就意味著,尚未穩(wěn)定双揪,很多原生的功能尚未很好的實現(xiàn)破喻。是一個依然處于開發(fā)階段的庫,這也意味著盟榴,能多深層次的優(yōu)化和兼容操作,RN目前是無法像原生一樣的婴噩。同時針對不同的設備擎场。RN開發(fā)需要更多的邏輯開銷去思考不同設備之間的兼容問題。
  • 調(diào)試成本几莽。RN是一個相對比較重的庫迅办。會增加代碼庫的復雜度,其調(diào)試與原生相比有著一定的困難章蚣。

說了優(yōu)勢劣勢站欺,總體來說,我們不得不肯定RN本身真的是個很牛逼的庫纤垂。我最初不學習RN的借口是矾策,其不像原生一樣有著那么好的性能,但是實際上峭沦,因為他最終調(diào)用的是原生庫贾虽。性能上和原生相差無幾。

來說說RN主要的應用場景

對于需求今天一個樣吼鱼,明天一樣樣這樣變動很大的App蓬豁。我們往往需要一套完備的熱更新機制。比如對于現(xiàn)在大多數(shù)電商App來說菇肃,電商應用實時性較強地粪。需求甚至無法在開發(fā)初期對產(chǎn)品短期內(nèi)可能發(fā)生的變化有一定程度上的預估。這時候為了防備產(chǎn)品提出類似明天上線這樣的需求琐谤。在設計架構(gòu)時就加入RN是值得的蟆技。

有很多小公司,資金有限笑跛,但是希望多平臺運行付魔,需要快速上線,搶占先機飞蹂。這樣的App對性能可功能的需求往往不是那么高几苍。這時候RN就可以發(fā)揮其作用了。

以上就是對RN技術的一些個人總結(jié)陈哑。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末妻坝,一起剝皮案震驚了整個濱河市伸眶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌刽宪,老刑警劉巖厘贼,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異圣拄,居然都是意外死亡嘴秸,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門庇谆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來岳掐,“玉大人,你說我怎么就攤上這事饭耳〈觯” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵寞肖,是天一觀的道長纲酗。 經(jīng)常有香客問我,道長新蟆,這世上最難降的妖魔是什么觅赊? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮琼稻,結(jié)果婚禮上茉兰,老公的妹妹穿的比我還像新娘。我一直安慰自己欣簇,他們只是感情好规脸,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著熊咽,像睡著了一般莫鸭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上横殴,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天被因,我揣著相機與錄音,去河邊找鬼衫仑。 笑死梨与,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的文狱。 我是一名探鬼主播粥鞋,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼瞄崇!你這毒婦竟也來了呻粹?” 一聲冷哼從身側(cè)響起壕曼,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎等浊,沒想到半個月后腮郊,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡筹燕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年轧飞,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片撒踪。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡踪少,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出糠涛,到底是詐尸還是另有隱情,我是刑警寧澤兼犯,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布忍捡,位于F島的核電站,受9級特大地震影響切黔,放射性物質(zhì)發(fā)生泄漏砸脊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一纬霞、第九天 我趴在偏房一處隱蔽的房頂上張望凌埂。 院中可真熱鬧,春花似錦诗芜、人聲如沸瞳抓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽孩哑。三九已至,卻和暖如春翠桦,著一層夾襖步出監(jiān)牢的瞬間横蜒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工销凑, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留丛晌,地道東北人。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓斗幼,卻偏偏與公主長得像澎蛛,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蜕窿,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,167評論 25 707
  • React Native學習<一> 認識Recat Native 博客原文:http://www.jianshu....
    AFinalStone閱讀 2,670評論 0 12
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理瓶竭,服務發(fā)現(xiàn)督勺,斷路器,智...
    卡卡羅2017閱讀 134,661評論 18 139
  • 我知道斤贰,這是一封永遠都不會寄出的信智哀。 帥老頭,有多久沒給你寫信了荧恍。七年了吧瓷叫。馬史爸爸表達愛意的方式是給兒子買皮鞋,...
    我是蠻吉閱讀 561評論 0 1
  • 春城送巡,燈光點亮了整個夜空摹菠,明君將最后一個句號輸入文檔后,伸了一個懶腰后關閉文檔骗爆、關機次氨、鎖門、下樓整套動作一氣呵成摘投。...
    蒔荒閱讀 432評論 1 3