<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          【Vue】關(guān)于為什么我推薦大家看vue代碼的隨想

          共 1496字,需瀏覽 3分鐘

           ·

          2021-05-05 08:37

          很贊同【越好的框架越不需要使用者特地去讀】這個理念,畢竟我們研讀源碼就是為了解決具體問題,按需去看比較好,不過這個前提是你已經(jīng)是一個系統(tǒng)化訓(xùn)練的工程師,如果是針對新手,尤其是前端這個特殊的領(lǐng)域,大部分同學(xué)都不是計算機出身 ,現(xiàn)在我建議去看vue3的源碼 并不是其他的不好,而是Vue3很適合用來幫助初中級前端走完升級的路線,通過vue3源碼中的細節(jié),構(gòu)建和豐富自己的前端知識體系

          1. vue3大部分代碼是小右寫的,平均代碼質(zhì)量比較高,React也很贊,但是整體工程化過于復(fù)雜,不太適合新手,建議搞定vue之后去看React更好一些
          2. 源碼閱讀本身也是一個需要練習(xí)的技能,一次訓(xùn)練,持久收益
          3. 先忽略ts,去看@vue/reactivity,這是個獨立的包,1000左右,難度適中,測試覆蓋率100%(到100%的測試case還是我提的 嘿嘿),非常適合作為第一個閱讀的源碼
            1. 還能鞏固ES6+的幾個新數(shù)據(jù)解構(gòu)和語法
            2. 之前我推薦1000左右的代碼還是seajs
          4. 研究文件解構(gòu),學(xué)習(xí)一下工程化體系
            1. lerna管理
            2. script下面的文件,研究commit規(guī)范,git hook,dev build等配置
          5. 研究runtime-core和dom,了解vue整個框架設(shè)計的理念
            1. 事件修飾符once的實現(xiàn),并不需要add再removeListener,而是addEventListener的時候加一個第三個參數(shù),{once:true}的配置就可以
            2. insertBefore第二個參數(shù)給null的話,和appendChild效果一樣
            3. 等等等等, 會讓自己恍然大哦一下的小tips
            4. 細節(jié)不多說,比如dom diff里面的getSequence生成最長遞增子序列,會讓你嘗試去研究算法是個啥,然后研究vue3的貪心+二分實現(xiàn)的時候,還會了解動態(tài)規(guī)劃的實現(xiàn),算法能力++,至少意識到需要學(xué)算法,這也是前端老鐵的軟肋質(zhì)疑
            5. 有些vue的實現(xiàn)讓你了解js和dom里一些容易忽略的細節(jié)
            6. shapeFlag和patchFlag還會讓你意識到位運算也需要學(xué)學(xué)
            7. typescript不用多說,看見不懂的語法,按需學(xué)一學(xué)也不錯
            8. 看完就可以搞一本算法第四版之類的,好好學(xué)一下算法,有時候知道自己需要學(xué)也挺重要
          6. compiler了解vue編譯的優(yōu)化
            1. 讓你知道原來還有個編譯原理的東東需要學(xué)習(xí)
            2. 先去看the-super-tiny-compiler這200行代碼, 了解一下parser,ast,codeGenerator等是啥意思
            3. 看完compiler dom和core ,既能應(yīng)付面試,還大概入門了編譯原理
          7. 其他的很多實現(xiàn)也挺有意思,而且大部分代碼都配有測試
            1. slot
            2. v-model
            3. keep-alive
          8. 其他包比如sfc,test選看,按需看就行
          9. 其他的vuex,vite,router啥的也是類似

          綜上所述,看完vue生態(tài)代碼其實是對前端這個特殊行業(yè)的新手工程師,可以起到幫助鞏固計算機基礎(chǔ)的重要性。 

          有時候不是我們不勤奮,而是沒有科班的訓(xùn)練,我們不知道這些東西學(xué)的意義是啥,閱讀框架源碼的意義也在于此 

          當然完整系統(tǒng)的看完一個后,閱讀源碼這個技能你也掌握了,針對其他框架就可以按需閱讀,也就找到了自己高效學(xué)習(xí)的路線 

          ps:我vue3源碼也是粗略看過,如果有說的不對的地方,以vue最新的源碼為準

          歡迎閱讀原文去知乎討論


          瀏覽 55
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美激情爱爱网址 | 日本驲屄视频在线高潮视频 | 国产激情无码 | 国产伦精品色情 | heyzo超碰 |