Web前端需要熟悉大學里【高大上】的計算機專業課嗎?


  作為一名剛剛大學畢業,進入新的學習階段的研究生,我必須說大學的專業課非常重要!不管你信不信,事實就是如此!

 

  一、大學學習的專業課非常重要,它決定了我們能走到什么高度

  前端的發展非常快,我常常覺得剛剛關注的新東西,過一段時間再看就截然不同甚至被廢棄了。

  所以保持高效自主的學習能力對於應對這種變換是非常重要的。而這種能力的基礎在很大程度上和大學階段計算機專業課緊密相關。比如WebGL、預處理語言追溯到常規計算機領域就是OpenGL和編譯原理等領域。

 

  二、前端知識都是舊中創新

  純粹的前端知識都算不上新創,而是不斷在舊知識體系上重演改善。我記得我的師兄告訴我如果所有的東西都可以用js實現一遍,一定會大有收獲。可是我始終沒有做到。

  也許有的朋友喜歡看技術書籍,喜歡細致解讀里面的知識,但我習慣的方式則是在網絡中快速學習。比如瀏覽比較好的技術博客,關注新技術的資訊,但是慢慢發現碎片化的知識已經快膨脹到我難以承受的地步了,所以平衡就成為了必須要解決的問題。我們必須找到對自己最有價值的知識,並且牢牢掌握

 

  三、我對前端的認知

  前端,狹義地講就是網頁。也許許多人都會覺得寫網頁很low,還有人認為一個專科生或者去培訓幾個月的人都可以做到,沒什么可驕傲的。那我覺得也許是他們對前段的理解還不夠深入。其實,前端的知識挺多的,真的不像大家想象的那么容易。

  前端,廣義地講,是全平台上交互邏輯和表現,其是與后台數據邏輯之間的技術中間層。前端工程師是最接近用戶的技術人員,對其各方面的要求也是很高的。

 

  四、本科專業課與我現在前段起步的聯系

  舉幾個例子說明。

  比如想要做數據可視化的頁面,如果不會數據結構,怕是連D3.js的API都用不好。

  比如想要做消息通知,就要處理長連接,就需要知道TCP里長連接或者WebSocket是怎么回事。

  比如想要做在線聊天的前端,為了承載大並發,極有可能會自行定制HTTP Header,這就需要計算機網絡的知識。

  比如找最小子串,這是算法吧。

     比如簡單的AJAX、復雜的交互效果,很大程度上依賴“異步”,這是操作系統里面的概念。

  還有最重要的學習一門程序設計語言,學習語法的同時,關鍵是學習編程思想。前端里就學習JavaScript吧。

 

  再回到大家覺得很low的網頁開發,我們仍然需要懂一些基礎知識:

  瀏覽器內核

  HTML、CSS規范標准

  HTTP協議

  JavaScript語言

  一件看似很簡單的事情,想要做好也不是那么容易的。

 

  綜上,Web前端的綜合實力是非常硬的,絕不是花拳綉腿,而這種硬實力的背后就是那些“基礎課”。

 

  學習是要分層次的,先學會,能做一些有用的東西。尤其是先把想參與的工作、項目中用到的知識學會。

  還有就是不要浮躁。有時候不分主次地學,只是給自己一個“我很踏實”的錯覺而已。

  另一方面,在學好目標技能,感覺很難進展的情況下,學習更廣的領域,不失為一個突破瓶頸的好辦法。

 

  五、思想至上

  也許你會感覺計算機專業課上講的東西大多數是用不到的,但是我想說的是,老師交給我們的不是死板的知識,而是靈活的思想,可是我們往往卻沒有獲取到精髓。

  計算機科學,用一個詞概括就是抽象化。我們要學會把大的問題,簡化成小的問題。把復雜的現實,抽象成簡單的模型。

 

  六、學習建議

  如果決定以前端學習為主,就在提高前端的基礎上,抽出20%左右的時間學習基礎課,這部分的學習不會很快產出效益,但是長遠投資價值卻是很大的。

  基礎課的學習也有先后順序,相信學校的課程安排還是比較合理的,但是我們也可以根據自己的實際情況調整。首先學習最欠缺或最能解決目前開發瓶頸的課程,比如數據結構和算法,這是培養邏輯能力和實現底層優化的基礎。其次是計算機組成原理、操作系統,這是作為一名計算機開發人員的基本素養,能解決很多高層次不懂的和想當然的問題,讓我們學習計算機方面的知識更加省力。

  還有一項就是我自己特別害怕的課程——數學。不是說它不重要,而是建議用多少補多少,實用至上,不然的話光一個概率論就可能耗盡畢生精力了。

 

     最后,希望大家珍惜大學里的學習時光,充實自己,相信每個人都會擁有更好的明天。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM