美國兩位計算機系教授:Java對學生有害

國際消息 美國紐約大學的兩位計算機科學系退休教授發表一篇公開文章,標題是“計算機科學教育:明日的軟件工程師在何處?”。在文中,他們強烈地批評了紐約大學和其他大學,沒有向學生傳授純粹的語言如C、C++、Lisp和ADA。

“學生從當前教育實踐課程中獲取的技能不足以應付今日軟件行業的發展(尤其是安全和安全目的方面)。更不幸的是,與外部行業需要過於匹配了,我們訓練了許多容易被取代的軟件工程師。”

尤爲注意的是,文中以“Java作爲第一編程語言的諸多缺陷”爲小標題對Java進行了批判:

由於Java在Web應用領域的流行,以及初學者容易生成圖形化編程,Java成爲入門課程中使用最普遍的語言。從此後學生髮現很難在一個沒有圖像界面的語言上編寫程序,不清楚源程序和硬件如何執行之間的關係,更具有危險性的是他們一點也不瞭解指示器的語義,這使得使用C語言編程也成爲挑戰。”

編程的真正的美妙之處在於,將複雜的過程縮減成非常小的一個簡單操作。Java並沒有體現這種美妙,它鼓勵採用“問題解決(problem-solving)”的方式,使程序員就像五金店的水管工人:到處翻騰抽屜、閣子最後找出需要的零件。最終的結果使得學生知道如何將一些簡單的程序組到一起,而對編程卻一無所知。而且過早地使用Java庫和框架有一個更大的缺陷:它使得學生很難對編寫的東西形成運行時間成本(run-time cost)的概念,因爲他們很難知道究竟哪種方法的調用是有效的。

我們爲此亦找到了一些證據。Bjarne Stroustrup(被譽爲C++之父)在德州農工大學(Texas A&M University )的報告中,指出了工業對於這種方式越來越多的不滿,而且Bjarne這樣說,“從工業那裏我看到了許多許多對此(Java作爲第一編程語言來使用)的抱怨,尤其是AT&T, IBM, Intel, Bloomberg, NI, Microsoft, Lockheed-Martin等等。”

另外在文中,這兩位教授們認爲真正的程序員能夠使用任何語言(C,Java,Lisp,Ada)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章