有哪些程序員必須要知道的知識?
程序員是一個專業性高的行業,知識面相對也比較集中,但程序員工種也多,細分出來也有很多個行業,如前端工程師,后臺開發工程師,大數據,python工程師,嵌入式開發等等。但各行業的程序員都必須要知道的知識就大同小異了。
1.計算機理論知識如計算機數據的進制轉換,要知道進制之間如何轉換;程序不同語言層次運行效率的區別,如:機器語言,匯編語言,高級語言(C++,java,python,JavaScript等);程序數據變量在計算機中的存在形式(在底層為二進制編碼);計算機的結構組成,運算器,存儲器,控制器,輸入部件,輸出部件等;內存儲器類別:RAM,隨機存取存儲器,也叫讀寫存儲器。用來存放用戶輸入的順序和數據,斷電后, RAM中的信息隨之丟失。ROM,只讀存儲器,斷電后, ROM 中的信息堅持不變,用來存放固定的順序和信息。其它還有很多,不做贅述,具體可以查找關于計算機理論的資料。
2.程序語言基礎理論變量(數字,字符,字符串等),變量類型(void,unsigned,short,long,float,double等),程序的三種基本結構(順序結構,選擇結構,循環結構),函數(有無返回值,有無參數),語法,指針,結構體,共用體,枚舉等,數據結構和算法,算法的話有多重領域,如圖像算法,一般只需要知道常用的幾種算法,如冒泡排序。
3.代碼規范代碼規范是經常會被忽略的一個細節,整體代碼要清晰易讀,有可讀性,比如代碼上下盡量對齊,需要空行或者空格的地方空出來,亂糟糟的代碼在后期做維護會讓人很頭疼;在必要的地方做注釋說明,方便閱讀和維護。
4.知識技能的提升一般我個人常逛的網站有csdn,博客園,linux社區,開源電子網,電子發燒友,網易云課堂,GitHub等。程序員不同領域需要的知識信息不同,都會根據自己的專業去提升自己,程序員得學會如何提升自己所屬領域的知識水平,有些領域知識更新快,不斷完善自己,提高市場競爭力才是關鍵。
以上是我的個人見解和觀點,希望能幫到您,謝謝!