2010-06-09 50 views
3

正如問題所述,如果一個學生在學習編程語言時多樣化或探究,還是應該只關注2-3種語言並真正瞭解它們,那麼它會更好嗎?學生應該多樣化還是掌握編程語言?

我的意思通過多樣化實例:

Functional -> Scheme 
    Procedural -> C 
    Object Oriented -> Java 
    Dynamic or scripting -> Python 
    Other -> C++ 

我有幾個休息在學期之間有時(最多3個月)和我想的任何學習一門新語言或「主」的我現在知道。這將在未來對我有利嗎?我知道一些(大約3個月的自學)Java,C和C++已經。如果我沒有弄錯,我住在哪裏,那麼這個行業在Java,C++和C#方面就很重要。

+5

社區wiki,最好。編輯:歡迎來到堆棧溢出!通常,這些類型的問題被標記爲社區wiki,以避免像'rep whoring'這樣的事情,並鼓勵合作/想法共享。 – Cam 2010-06-09 22:39:22

回答

2

你無法掌握語言本身,你可以掌握編程。最後,如果你必須學習一種新的語言,那麼它就很少了,因爲你擁有其他項目的基本知識,你只需要習慣新語言的特定內容。

3

兩者兼而有之。掌握至少一種語言(可能是Java或C#,因爲這些語言在行業中最爲常見),並學習其他語言以瞭解他們可以教給您的語言,以便您可以回到那些被迫使用的語言。

0

很難掌握一種語言,除非您真的實際使用它,這意味着在假期期間您將不得不編寫真正的項目 - 並不是很多人可以實現這一目標(在短期內完成一個真實的項目時間,而從學習休息)。

我會建議先分散化。你會發現,一旦你知道幾種不同的語言,那麼任何新的語言都會變得更容易學習。不同類型的語言也會向您介紹新的概念,並可能幫助您確定您真正想要執行的編程類型。一旦你決定你喜歡什麼,然後努力掌握它。

1

我相信一個好的程序員並不知道每一件事,但他可以學習每一件事。
當你掌握一門語言並掌握「編程」時,學習另一種語言將不會超過一週的時間。
但是,看看新語言並能夠閱讀和理解多種語言的代碼是一個不錯的主意。

4

Mastery takes ten years。但如果你是我的學生,我會建議你制定四種語言的良好的工作知識:

  • 功能
  • 面向對象
  • 機器級
  • 腳本

這些類別相當寬鬆,但如果您對四個方面都有良好的工作知識,那麼您在多樣性方面得分很高。

如果您想要掌握精通,請將C作爲您的機器級語言,並將Lua作爲您的腳本語言。 Lua絕對小得足以被掌握,如果你避免像constvolatile的真實含義那樣的奇怪角落,C也不算太壞。我不知道我會說功能性或面向對象的語言是否易於掌握。

摘要:建立精心針對性的多樣性並讓掌握與時俱進。

+0

我會說,知道其中一種客戶端Web語言(* lungua franca *是JavaScript,或者選擇編譯爲JS的幾十種語言之一:Dart,CoffeeScript,Roy,...)也是很好的。 – 2012-04-22 13:52:16

0

這取決於你的意圖在哪裏和什麼(至少對我而言)。

大學生的代表隊與課程有一定的聯繫,課程肯定會引導他們並將他們與預定義的學習路徑聯繫起來。

對於我的情況(自學和獲得供應商認證)的人來說,目標是就業和收入,因此學習語言以找到工作爲目標(或者是)是我的最高優先級。

作爲開發人員在完整的3層系統上工作並不常見,因爲角色通常至少分成兩個端點(前端和後端),所以我會專注於您擅長的內容。 (如果你是一位藝術家和圖形傢伙/ gal專注於前端,並且如果你是數學和解決問題的人,那麼關注後端和可能的腳本)。

我已經非常喜歡學習Java(即使是潛伏在​​我腦中的橙色大腦腫瘤),並發現它是一種足夠好的語言,可以將您帶到其他語言中,因爲它與常規編程具有一些共同之處,如函數(方法) ,可以寫成程序化的(如hello world app),具有標準變量聲明,邏輯運算符和條件運算符可以在許多其他語言中找到。