回覆列表
  • 1 # muyoule

    不知道寫得少會不會被摺疊。。。

    看題主有過思考,我就提點建議吧。

    建議學C,不僅要學習關於記憶體分配,指標的東西,更為以後學習資料結構和演算法打下基礎。況且linux系統有很多系統API直接是面向C的(畢竟C語言是為了開發unix作業系統被開發出來的)。

    關於C++,我的建議是暫時不學,或者當作新語言來,平行而學。我見過太多C程式設計師轉C++水土不服的,其實C++11及其以後的標準,摒棄C的桎梏學起來更快寫出來的程式碼更安全。

    最後一點就是,語言對於程式設計師是工具,不是學科。不要被語言束縛住,好的程式設計師都能上手多門語言,把C學懂學通,熟悉*nix環境程式設計,其餘的,自然越學越快(當然C++是個例外,我的建議是不以通吃C++為目標為妙)。

    教科書建議:

    K&R — “the C programming language”.

    Christopher Negus — “Linux Bible”.

    W. Richard Stevens & Stephen A. Rago — “Advanced Programming in the Unix Environment”

    David R. O"Hallaron — “Computer systems, A Programmer’s Perspective”

  • 2 # 網路圈

    剛接觸計算機程式設計的同學可能會糾結於選哪種語言,其實語言大體上差距不大,而市面上的佔有率會決定此語言未來的發展。

    首先來說,C、C++、Java都是主流的開發語言,這3種語言各大學基本上都會教,它們都可以執行在Linux上。

    C語言比C++、Java都要底層一些,它是面向過程的;C++可以理解為是C語言的擴充套件版本,相容C,但支援面向物件程式設計;而Java是完全獨立於C和C++的。

    我建議程式設計新手直接選擇Java作為入門語言,為什麼呢?因為C/C++難度和門檻都比較高,一般人不能很好駕馭它們,而Java比C/C++語法上要規範簡單很多,現在執行速度也不比C/C++慢太多。

    另外從當前的發展情況來看,國內使用Java的企業比C/C++的企業多,這就意味著工作崗位需求量大,好找工作,而且薪資也不低。自始至終,在TIOBE程式語言排行榜上,Java基本上都排第一,雖然不能絕對的說明什麼,至少從側面反映出Java的熱門。

    前幾年網際網路各大知名網站可能不是用Java構建的,但從2000年之後,基本上都在轉Java重構。像銀行業務,基本上也是清一色的Java系,再到現在熱門的大資料、微服務,Java都有成熟解決方案。

  • 中秋節和大豐收的關聯?
  • 羊水破先了但是肚子不痛是怎麼回事?