前端進階所必須具備的知識主幹

當你開始躋身架構師工作崗位時,你就深切的體會到程序員進階的心酸,你要掌握的東西絕非摸一個項目領域知識點的綜合掌握程度,雖然原則上來講沒有人能夠獨自解決所有問題,但是我們更希望找到一個人能夠解決更多的問題,即使不能立即解決,憑藉自己已有的知識水平判斷出可能的問題所在,繼而制定調查計劃,主導調查方向,得出科學結論;與此同時你要明白,但凡你不是在做全世界頂尖的科研攻關,那麼你所遇到的問題90%以上是別人已經經歷過,或也正在尋求解決的,所以虛心請教學習,同時做好分享是進階之路的基石;

以上方法論都是狗屁,是人都知道的只要態度端正,關鍵在於如何做,怎麼堅持的問題?上乾貨。

如果你好歷史而且知識儲備不錯,那麼你肯定腦子裏就會有個印象,你爲何能夠儲備如此之多的歷史知識,啓蒙、閱讀、背誦、實地考察、、、、可能會有一大堆原因,但最爲重要的是直接原因是: 你大腦裏有座歷史框架,就像樹幹一樣,因爲他的存在任何途徑你所瞭解到的歷史相關知識都會不自覺裝進這個框架內(葉子從樹枝長出),所以前端程序員如何積累到更多的知識,首先你就必須搭建屬於自己的知識儲備框架。

以下便是業界初步認可的主幹:

  1. 從瀏覽器接收url到開啓網絡請求線程(這一部分可以展開瀏覽器的機制以及進程與線程之間的關係)

  2. 開啓網絡線程到發出一個完整的http請求(這一部分涉及到dns查詢,tcp/ip請求,五層因特網協議棧等知識)

  3. 從服務器接收到請求到對應後臺接收到請求(這一部分可能涉及到負載均衡,安全攔截以及後臺內部的處理等等)

  4. 後臺和前臺的http交互(這一部分包括http頭部、響應碼、報文結構、cookie等知識,可以提下靜態資源的cookie優化,以及編碼解碼,如gzip壓縮等)

  5. 單獨拎出來的緩存問題,http的緩存(這部分包括http緩存頭部,etag,catch-control等)

  6. 瀏覽器接收到http數據包後的解析流程(解析html-詞法分析然後解析成dom樹、解析css生成css規則樹、合併成render樹,然後layout、painting渲染、複合圖層的合成、GPU繪製、外鏈資源的處理、loaded和domcontentloaded等)

  7. CSS的可視化格式模型(元素的渲染規則,如包含塊,控制框,BFC,IFC等概念)

  8. JS引擎解析過程(JS的解釋階段,預處理階段,執行階段生成執行上下文,VO,作用域鏈、回收機制等等)

  9. 其它(可以拓展不同的知識模塊,如跨域,web安全,hybrid模式等等內容)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章