服務項目
品牌網站建設

數字營銷

係統平台開發

數字產品

安全運維

Menu
官网开云
官网开云
於連林:從程序員的角度分析微信小程序
時間:2016-10-14 11:42:00

先來了解下什麽(me) 是微信小程序轉自知乎

微信也許重申了”我們(men) 是一款約炮軟件”

微信還提供了一大堆接口和組件(不好意思,說了句廢話)。

下麵是禪叔的觀點:

小程序原理就是用JS調用底層native組件,和React Native非常類似。恰恰又證明了,凡是能用JS開發的最終都會(hui) 用JS開發。

證明:凡是能用JS開發的最終都會用JS開發

解: 
據我多年經驗,這句話是一個(ge) 真命題。 

語言的設計者是有兩(liang) 個(ge) 派係的,有些人認為(wei) 程序員語言應該防止程序員幹蠢事,另一些認為(wei) 程序員應該可以用編程語言幹一切他們(men) 想幹的事。 C/Java語言是前一個(ge) 陣營的代表, JS是後一個(ge) 陣營的代表。

往往第一個(ge) 陣營的語言強調性能, int就是int,double就是double 還第二個(ge) 陣營就是強調便利性 ,int是var , double還是var。

選擇語言的時候,其實就是在做選擇題。是選擇便利還是選擇性能。

往往新出的語言便利性都很強,是因為(wei) 硬件性能提高了,從(cong) 而可以為(wei) 了便利性放棄性能要求。

編程語言的主要矛盾就是程序開發的便利性和硬件水平的矛盾。

如果能夠穿越回到70年代(首先在中南海西麵買(mai) 塊地), 那時候你坐在龐大的計算機麵前寫(xie) 代碼的時候,無意間小手一抖,多敲倆(lia) 空格,然後程序oom。
不要感覺上麵的事情不可思議,那時候內(nei) 存低的可憐,每一個(ge) 字符都是嚴(yan) 格定義(yi) 的,不允許任何浪費。能運行java虛擬機都是天方夜譚,怎麽(me) 可能會(hui) 有java語言。

節儉(jian) 是一種美德,浪費不一定是壞事情

隨著硬件性能的提高,出現了越來越多的編程語言,新出的語言往往性能上浪費,便利性上提高。要是按照幾十年前的標準衡量,有一些使用新語言開發的熱門應用程序對硬件資源浪費非常驚人。

不僅(jin) 編程語言有這種現象,這實際是一種普遍的曆史趨勢, 隨著技術的發展,每一代人都在做上一代人覺得浪費的事情。你可以想象下30年前打個(ge) 長途電話,而現在,別說長途電話了, 有的人都就坐飛機去約炮了,這個(ge) 在以前很難想象。

浪費可以分成好的浪費和壞的浪費。用更多的浪費換來簡單的設計,並不是什麽(me) 壞事。

如何才能充分利用新硬件更強大的性能最有利地“浪費”他們(men) ?

這時候問題就回到了開始, 證明:凡是能用JS開發的最終都會(hui) 用JS開發

JS這種語言擴展性極強, 性能比起其它語言隻能嗬嗬了。 但是硬件速度會(hui) 提高很快。 
Paul Graham算過,如果摩爾定律一直成立。一百年後計算機的運行速度是現在的74乘以10的18次方倍。(準確地說是73 786 976 294 838 206 464倍) 

終有一天,你會(hui) 在選擇的時候忽略性能,選擇便利性。

以前上學的時候,經常去網吧玩大話西遊和傳(chuan) 奇。而現在隨便一個(ge) 頁遊就能做出這種遊戲效果。10年前你很難想象在網頁上能玩這種遊戲。

你現在就可以嚐試想象一下若幹年後,打開網頁能玩魔獸(shou) 世界。這並不是不可能實現的。

強調性能的語言還能否生存

我們(men) 都知道C/C++ 就是強調性能的語言, 我們(men) 做遊戲或者視頻播放的都是要求性能的。他們(men) 會(hui) 不會(hui) 被新的語言取代呢

我可以鄭重證明,不會(hui) 的。

雖然上麵我說的Java語言屬於(yu) 強調性能的第一陣營的語言。但是相對於(yu) C/C++ 它顯然是增強了便利性。 
語言是發展的,是迭代的, 隨著硬件性能提高,基本上每個(ge) 節點下都會(hui) 產(chan) 生新的語言,相對於(yu) 之前的語言浪費性能,增強便利性。

但是很難取代之前的語言,對性能要求高的程序依然會(hui) 出現的, 即使以後可以在網頁上玩魔獸(shou) 世界,但是還會(hui) 出現 超級魔獸(shou) 世界,泰坦世界, 宇宙世界 等等一大堆新的對性能要求較高的遊戲。

微信小程序會取代其它APP嗎?

問題回到我們(men) 的主題微信小程序上,微信小程序會(hui) 取代其它APP嗎?

我的觀點很明確, 
現在不會(hui) 取代,以後會(hui) ,但是以後會(hui) 出現以後的微信取代不了的;以後的以後會(hui) 取代以後的,但是以後的以後會(hui) 出現以後的以後的微信取代不了的 …..

其實也不難解釋,10年前我們(men) 不能在網頁上玩傳(chuan) 奇, 但是現在可以。但是現在又有了魔獸(shou) 世界,也許10年後網頁上就能玩了,但那時候肯定還會(hui) 出現 超級魔獸(shou) 世界之類的遊戲不能在網頁上玩。 

作為一個程序員,我們需要學什麽?

有的人會(hui) 擔心,微信小程序出來了, 做androidsioses開發的會(hui) 不會(hui) 失業(ye) 啊。

其實你大可放心,隻要你會(hui) 學習(xi) ,永遠不會(hui) 失業(ye) ,你不學習(xi) ,就算微信小程序沒有推出你也會(hui) 失業(ye) 。

就目前而言,小程序始終是小,場景有限。還不能完全取代APP , 還可以通過小程序引導用戶下載APP。就像簡書(shu) 一樣,網頁端能瀏覽不代表不開發APP軟件。

但是要認清大的趨勢, 這段時間就是用來給你學習(xi) 的。

具體(ti) 怎麽(me) 學啊?

看文檔學習(xi) 唄, 首先了解JS語法基礎, 了解React Native原理,學習(xi) JS , RN,H5,CSS,運營,測試,產(chan) 品設計規範,圖形設計,神經網絡,OpenGL………

總之,根據具體(ti) 文檔,用到什麽(me) 學什麽(me) 。

作為(wei) 一個(ge) 程序員,你可以忘了學習(xi) 的高數,可以忘了學習(xi) 的英語,可以忘了學習(xi) 的線性代數…. 但是千萬(wan) 別忘了學習(xi) 。

Kaiyun体育官方全站入口服務SERVICE
谘詢
微信掃碼谘詢
電話谘詢
400-888-9358