參加第二屆前端開發者年度大會是個什麼樣的體驗?
比如聽到什麼新的技術,遇到什麼好玩的事情,最大的收穫是什麼,都可以說說
代表公司去參加今年的 第二屆前端開發者年度大會,散會的時候,Team 技術老大問我,今天感覺怎麼樣,有什麼收穫,當時就零零碎碎的回答了一些,不算完美;趁著還記得點什麼,在這裡做個自我回顧總結,謹代表個人見解,有不當之處,或若涉及圖片隱私或者其它問題,煩請指正.==================================================記得小時候寫作文的時候,老師都會強調三要素:時間,地點,人物;那下面就從這三要素來作為時間線回顧:




接下來,拋出了一個問題:前端可以不依賴 rails 嗎,後端為什麼不能也用JavaScript來寫?
之後順勢推出了 ReactJS,主推前後端都使用 JavaScript 來實現,前端主要使用react,redux,後端使用 nodejs 去構建整個應用程序; 使用reactRouter做前端路由,使用 express 作為中間鍵等等,由於本人還沒有使用react和nodejs去寫過項目,這裡就不好描述更多了,以免誤人子弟- 代碼共享
- 使用nodejs,數據處理放在伺服器,前端只要渲染,性能可以得到很高的優化
SEO
然後就是一些相關問題的代碼演示:
how about create store?
- initial data?
- how about fetching data?


- 微信 Android 客戶端機型分布
- 微信 Android 客戶端系統版本分布
- 微信用戶網路分布



- 動畫卡頓
- 不支持偽元素動畫
- 只支持部分的 flex 布局
- 視頻默認是會有控制條的(去不掉,據說是為了防止惡意的視頻播放問題)
- autoplay無效
- 待補充...


- 打開微信,點擊「我」——&> 設置 ——&> 通用 ——&> 清理微信存儲空間
- 同時設置 localStorage 和 cookie
- 黑科技://triggerWebViewCacheCleanup




解決的問題:
- Manage data/state
- UI logic
- Reusable
- Needed tests
2. Flux ReduceStore
- 做資料(數據處理)
- 負責render (渲染)
3. Functional style
推薦使用 reduceStore, StateLess Component
提到一個 HOC 的概念 ,沒理解,後續在消化更新...
這個主題講的非常的棒,可是一時不知道該寫些什麼...



==================================================
14:20 下一代Web技術運用騰訊雲平台產品中心總監 陳子舜(PuterJam)
主要講解與前端性能優化相關的技術點,從兩個常見的前端面試題引申話題:

問:如何做前端優化:
答:
- Yahoo xxx原則
- js 文件請求合併
- css 雪碧圖
- 拆分域名
- 壓縮
- ...
問:頁面白屏會是什麼原因:
答:
- 網路問題
- 兼容問題
- 終端問題
作為面試者, 我們可能常常會想到以上一些關於前端性能優化的點,可是,做為騰訊雲的技術總監,顯然不會給我們分享這麼簡單的知識點:下面看看大牛們是從哪些方面考慮性能優化的,直接上圖:









==================================================
16:30 下前端能力的培養計算機之子,阿里高級技術專家 程劭非(winter)

winter帶來的主題沒有涉及太多的技術細節,而是非常系統,站在某一個高度上分享他自己的學習經驗;強調前端不在於難學,而在於不知道怎麼學;在他看來,如果前端分成100等分,前端技術知識點只佔據20%,而能力則佔據80%,這裡的能力主要包括編程能力,架構能力,工程能力(管理)
「好前端才分對錯,成年人只分利弊」 -- winter
上面這句話表面看不出什麼意思,可仔細想想,其實他描述的是一種想像:一個好的優秀的前端是會區分對和錯的,應該是能看到事情的本質的一面,而不是僅僅只區分利與弊,能用就好的一個心態;更具體的講,winter 推薦我們可以從以下幾個方面去學習培養前端能力:
尋找線索
- 附錄
- 源代碼
- 反射(在瀏覽器運行查看效果,找到知識點的脈絡)
建立聯繫
- 美感
- 完備性(如果有insertAfter方法,那我們應該想到會有insertBefore方法)
- 操作同一組數據(進行分類)
歸類
- 按照關聯關係建立起連接,對偶性,對稱性
- 例如:insertBefore對應insertAfter,bind對應unbind
追本溯源
當遇到問題有不同的見解時,我們應該具有追本溯源的心態,去google,看wiki,找到問題的關鍵本質,要有考據的過程,比如說閉包:
大部分可能會說: 閉包就是能夠讀取其他函數內部變數的函數
那如果我們去追本溯源,在深入一點去研究:
- 簡單的說: 閉包是什麼
- 深入一點:閉包有什麼作用
- 在深入一點:常見的用法
- 在在深入一點:會什麼會有閉包這個東西
- 在在在深入一點:......
能力培養
- 習題很重要 習題很重要 習題很重要
- 能力是需要訓練的
- 主動性
- 習慣養成
- 系統訓練

==================================================
17:35 HTTP/2 時代的Web性能國際知名Web設計師/前端工程師 Holger Bartel
最後一個主題是由Holger帶來的HTTP/2時代的web性能,由下面的一張圖可以看出人們正在排隊等待的一個過程,由此引申出當我們去訪問一個網頁時,如果需要等待一段時間才能得到反饋的這個過程

等待,是指我們需要一個特定的時間和特定的動作去執行,然而當我們需要做一件事情時,期望的應該是立即去執行,而不是需要等待一段時間
性能,主要是關乎用戶的一個期望,如果是2s內打開一個網頁,用戶是不會抱怨的,5s內如果能打開,那麼用戶也還是可以接受的,但是如果是8s還不能打開,用戶是會失望的,他們會認為這個網站已經掛掉了;這個大概就是前端性能優化時我們經常會提到的一個2、5、8概念。
接著簡單說了目前一些常見的基礎優化策略:
inline image
css sprite
.....
講解頁面的渲染流程, 強調現有的優化主要是:阻塞資源,請求開銷,文件放置的位置,關鍵文件渲染的路徑等等,這些是在HTTP/1.1 時代做的事情,那麼在HTTP/2,性能優化應該怎麼處理,引申出 HTTP/2 的知識點:
HTTP/2 相比 HTTP/1.1 的更新大部分集中於:
- 多路復用
- HEAD 壓縮
- 優先順序請求
- ...
Holger Bartel 講解的 HTTP/2 涉及的新概念太多,這裡不能一一道來,只能是在大海里取一瓢水的感覺,這裡只能暫時的記錄一下,後面在去學習更新...
總的來講,HTTP/2 對未來 Web 性能優化工作起到很重要的作用,是一切優化的基礎。
推薦兩篇有關HTTP/2的文章:
- HTTPS, SPDY和 HTTP/2性能的簡單對比
- 簡介 - [ HTTP2講解 ]


文章同步在http://www.beansmile.com/blog/posts/feday-2016
更多文章可以訪問 http://beansmile.com/blog出現最多的關鍵詞是react,
主要做pc端,公司對pc端要求兼容IE7,表示對react累感不愛,
移動端在用react,考慮要不要轉去做移動端好了想聽我的真實感觸么?
都尼瑪廣告!!!都尼瑪混臉熟的!!!都在念文檔!!!大多數來參加的都是準備或正在找工作的。哈哈哈,我知道很多人要不爽了,不過這確實是我多次參加這種大型活動的感觸,不過沒有參加過你說的這次,不認同請摺疊。推薦閱讀:
※參加2017年5月20日北京首屆VueConf大會是個什麼樣的體驗?
※APP開發者是否有權停止更新WP版本?
※XcodeGhost 事件會造成什麼影響?
※個人開發者在 iOS 或 Android 開發市場獲得成功的機會是不是越來越少,為什麼?
※個人開發者(非營利)如何應對不友善的用戶?
