國際:不能成爲優秀程序員不是Java的錯

 
最近有些人因爲計算機科學系的畢業生編程水平低就對Java進行指責,儘管我不是特別喜歡Java,但是我想爲它辯護:我認爲學習Java不是這些學生不夠優秀的真正原因。這是一個敏感的議題,如果我的言語冒犯了某些人,在這裏先說聲抱歉。
 
與語言無關
坦白的講,學生學習的第一種語言和他們最終有多優秀並無關係。你所見到的大多數“核心語言”(入Java,C#,C/C++,Vb.NET等)在大學裏是按照計劃傳授的:
 
低層次:序列,條件語句和循環;
中間水平:函數,對象和遞歸;
高層次:模塊設計,設計模式,創建API程序;
高層次優化:訂單的複雜性和算法優化;
這些原則涵蓋了大量的“學習計劃” ,你可以教他們上面列出的所有編程知識。對於其他的語言(特別是, Java的),上面列出的知識有什麼遺漏嗎?
指針
低層次編程優化
操作符怎樣轉換爲機器編碼
 
最重要的一點是這些都是編程技能需要的一小部分,它們不需要第一語言是C / C + + (或同級語言)。儘早教這些知識是有必要的;有了這些做基礎,他們可以輕鬆地適應教學範圍以外的核心引導課程。
計算機科學系畢業生存在哪些問題呢?
1.    缺乏編程熱情
講師讓學生對編程沒有熱情可以認爲是事實。但重要的一點是,我在一個偉大的程序員身上看到的是他們對編程的熱愛。獲得熱情的最佳方式是讓自己感染別人,把自己的熱情傳遞給別人。最好的方法是通過教學,在這點上我深有感觸。在大學期間,我參加Microsoft的一些培訓,深切感受到教師的熱情傳給了我。
 
講師們似乎對樂趣與激情感到困惑。他們認爲一些東西並不需要別人感到有樂趣,努力使課程“更有趣”、不無聊是不正確的做法。有能力創造一些已幾乎原始的感覺,樂趣和能量,講師需要努力探索讓學生對他們的創造力感到興奮和激勵,即使這是件艱苦的工作。
 
2.算法和數學知識的匱乏
算法和數學很容易被誤認爲是無趣的領域,如果沒有正確的教導,這當然可以成爲現實。不過,這些都是一個核心部分的學習計劃。事實上,他們是獨立的語言證明Java是不應該被譴責的,並且他們比語言選擇更重要寫。有了紮實的算法和數學基礎知識,程序員使用任何一種語言都可以很好的代碼。
 
如果算法和數學正在被拋棄,那是因爲講師認爲他們太枯燥,他們需要找到有人可以令他們興奮!舉一個例子,在高中和大學都學過矩陣數學,在高中我的理解很簡單,使用過程中也沒有問題;在大學,感覺它是如此錯綜複雜,讓我混淆到忘了基礎知識。如果教導錯誤任何事情都會變得枯燥乏味,講師們需要停止對內容的批判,要開始探索新的教學方式。
結論
此刻問題的所在不是Java而是課程和傳授它們的人。沒有創造的激情、教學的核心算法和數學,學生永遠不會成爲優秀的程序員。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章