為什么要學習?React Native?
ReactNative不到兩歲,兼容Android平臺才一年。我學習。ReactNative其實不到一年,不長也不短。
PaulGraham文章中寫道:當大多數(shù)人真正注意到你時,他們不是第一次看到你站在那里,而是發(fā)現(xiàn)你還在那里這么久。
我就是Paul提到的"大多數(shù)人",當ReactNative剛出來的時候,我就通過了CSDN了解一些平臺ReactNative,但并沒有真正關(guān)注它。
半年多后,發(fā)現(xiàn)ReactNative它不僅仍然存在,而且產(chǎn)生了良好的效果ReactNative社區(qū)。從此開始逐漸關(guān)注。ReactNative。
至于為什么要深入學習ReactNative,原因如下。
一、開發(fā)ReactNative設(shè)計模式很少使用
是的,你沒看錯。設(shè)計模式很少使用。有人會問我,這也是學習的原因嗎?
先擱置一下,先給大家講一個大多數(shù)人都聽過的故事。
在金庸小說中獨孤求敗的劍冢中,埋葬了獨孤求敗一生幾個階段使用的幾把劍。
第一把是一把青光閃閃的無名劍。兇猛無敵,弱冠前與河朔群雄爭鋒。
第二把是紫薇軟劍,三十歲前使用,意外傷害義士不祥,是被遺棄的深谷。
第三把是玄鐵重劍,重劍無鋒,大巧不工,四十歲前依靠世界。
第四把是一把腐爛的木劍,因為獨孤求敗「四十歲以后,不滯于物,草木竹石可為劍」
人生境界階段分為利劍級、軟劍級、重劍級、木劍級,用于不同的武器。
程序員編程階段也分為幾個階段。
利劍級,利劍招式一般直接。剛進入職場的程序員技術(shù)有限,一般以實現(xiàn)功能為主要任務(wù),不考慮性能和模式。
軟劍級是在招式發(fā)揮到極致的基礎(chǔ)上追求變化的極致;當程序員迭代幾個項目時,他們會意識到程序的問題,代碼會更加標準化。
與軟劍相比,重劍水平是一個定性的飛躍;當程序員工作多年,做了很多項目時,他會慢慢理解各種模式,整合,達到架構(gòu)師的高度。
木劍級,基本達到人劍合一的境界;這也是我主要講的境界,可以回歸程序的本質(zhì)。
回到程序的本質(zhì),程序的形式應(yīng)該只反映要解決的問題。
當我們開發(fā)程序一段時間后,我們會發(fā)現(xiàn)編程已經(jīng)變得制度化,特別是使用面向?qū)ο蟮恼Z言,我們聽到了很多模式(pattern)這個詞,但我們應(yīng)該認為模式不應(yīng)該存在。
程序是為了解決問題,代碼中的任何其他外加形式都告訴我們,這表明問題的抽象性不夠深,應(yīng)該讓編程語言本身實現(xiàn)。
當我使用原始代碼開發(fā)時,我使用原始代碼開發(fā)Android在量的設(shè)計模式——工廠設(shè)計模式、適配器設(shè)計模式、單例設(shè)計模式等。一開始,我感覺很好,覺得自己很牛逼,面試別人或者自己去面試的時候都會炫耀。后來我想,Android為什么框架不提供更深的抽象,讓我直接實現(xiàn)特定的功能,而不使用各種模式來構(gòu)建各種框架?
當我接觸ReactNative時,雖然ReactNative也需要使用一些模式(現(xiàn)階段很難避免),但是ReactNative與整體設(shè)計架構(gòu)相比Android強多了,很直接。
例如,在ReactNative在開發(fā)過程中,我們需要更改的數(shù)據(jù)統(tǒng)一放置在狀態(tài)機中。只要我們更改狀態(tài)機中的數(shù)據(jù),無論界面上有多少數(shù)據(jù),只要它們與更改的數(shù)據(jù)相關(guān),它們就會發(fā)生變化。Android在原生開發(fā)中,可能需要將許多需要改變的封裝放在一起進行操作,這無疑是包裝的一步。
代碼更直接意味著程序更容易維護。更好的程序維護意味著成本更低。
二、學習成本比較高
第二習的第二個原因是ReactNative學習成本相對較高,也許你接受了以前的原因,這可能會讓你瘋狂,為什么學習成本高學習?。?/p>
學習成本高的往往更值得學習!
ReactNative學習成本真的很高,
你必須首先學習JSX語法,React知識,學習ES6.函數(shù)編程思想。如果你想知道的話。ReactNative還需要學習構(gòu)建nodejs。還需要學習包裝原生組件java,object-c,swift,也就是說,需要學習Android和ios本地開發(fā)。從設(shè)計到通信原理還需要了解C 。
有些程序員可能會告訴你所有的編程語言都基本相似,語言不重要,重要的是理解,因為他們想炫耀自己的知識。事實上,上面說的是胡說八道。從語法到概念,每種語言都是不同的。學習其中一種語言對你學習另一種語言的好處是你可以比較和加深你對學習的印象。
雖然學習成本很高,但通過學習ReactNative掌握這么多技術(shù)并不壞。ReactNative事實上,把各種知識打成壓縮包,讓我們更有效地學習。
ReactNative該技術(shù)具有可測量性和可放大性。
ReactNative既可以開發(fā)Android也可以開發(fā)IOS,尤其是寫界面的速度非???。理論上,你可以通過測量程序成為一個普通人Android/IOS程序員的兩倍。
微軟也開發(fā)了WindowsPhone的ReactNative版本。通過React你可以很容易地寫知識Web端程序。即使可以在微信小程序中找到。ReactNative的影子。
在我們的世界里,你的下沉或進步取決于你自己,你不能把原因推給外界。一些剛畢業(yè)的學生經(jīng)常認為,當他們聽說5%的人占社會財富的50%時,這是不公平的。從程序員的角度來看,我也認為這是不公平的,因為5%的程序員寫了世界上99%的優(yōu)秀軟件,他們應(yīng)該占更高比例的收入。
一個ReactNative程序員應(yīng)該是普通人Android/iOS程序員工資的兩倍沒有問題。
三、ReactNative還不完美
ReactNative還有很多坑,不完美,ReactNative幾乎每個月都有新的小版本發(fā)布,到目前為止還沒有推出1.0正式版本。這正好讓我們學習ReactNative的理由!
幾年前,我在北京工作時經(jīng)常聽到j(luò)avaEE程序員抱怨自己開發(fā)了這么多年,不如新入職。Android/iOS程序員工資高。
其實很好理解。你不知道技術(shù)越新越有價值嗎?
程序員就像蚊子一樣,有很多群體。據(jù)估計,村路上有10個程序員中有7個是程序員,但每個程序員都承受著巨大的個人壓力。如果你想生存,你必須吸收新鮮的血液。
目前使用ReactNative當你是產(chǎn)品經(jīng)理或者CTO當時,你必須優(yōu)先考慮大多數(shù)人的選擇。有一個專業(yè)術(shù)語叫做行業(yè)最佳實踐。這個詞出現(xiàn)的原因是產(chǎn)品經(jīng)理/CTO推卸責任。既然選擇了行業(yè)最佳實踐,如果不成功,就不是我的問題,而是行業(yè)。
但如果你是一名程序員,你會死得很慘,因為行業(yè)最佳實踐會逐漸改變。一旦你的技能不是行業(yè)最佳實踐,你就必須找到一種方法來阻止你的抵押貸款。
ReactNative不會取代Android/iOS本地開發(fā),但隨之而來ReactNative正式版本的推出可能成為行業(yè)最佳實踐。
關(guān)于如何學習ReactNative
想快速入門ReactNative,官方Api一定要看。不僅有文檔,還有例子,涵蓋了大部分知識。
如果英語不好,可以參考react-native中文文檔(建議比較英文文檔)
FaceBook官方還提供了演示App,可作為參考
facebook開源的f8個項目也挺好的
現(xiàn)在有哪些APP是用React Native開發(fā)的
直接登入React Native官網(wǎng),在React Native可以在官網(wǎng)案例中找到,其中我們都知道QQ空間,還有一些我們不熟悉的軟件。官方網(wǎng)站鏈接,打開列出,正在使用rn的app在React Native可以在官網(wǎng)案例中找到,包括我們熟悉的空間和一些我們不熟悉的軟件。百度、京東、手機QQ(僅限安卓版)<-官網(wǎng)鏈接,打開里面有羅列出來,正在使用rn的app在React Native官網(wǎng)案例上可以查詢到,其中就有我們大家熟知的空間,還有一些我們不太熟知的軟件。手機百度、京東、手機QQ(僅限安卓版)
如何提取京東優(yōu)惠小程序500京豆團鏈接
是的 一天只能參加一次拼團
如何提取京東優(yōu)惠小程序500京豆團鏈接
是的 一天只能參加一次拼團
以上就是【超過66萬人的選擇!京東react小程序(京東助力怎么生成小程序)】的全部內(nèi)容。


評論