李開復給開發者七個建議 阿新 • • 發佈:2019-02-13 1.練內功。 不要只花功夫學習各種流行的程式語言和工具.以及某些公司招聘廣告上要求的科目。要把資料結構 演算法、資料庫 作業系統原理、計算機體系結構、計算機網路.離散數學等基礎課程學好。大家不妨試試高德納所著《The Art of Computer Programming》裡的題目.如果你能夠解決其中的大部分題目.就說明你在演算法方面有一定的功力了。 2.多實戰。 通過程式設計的實戰積累、經驗、鞏固知識。很多中國大學畢業生缺乏程式設計和除錯經驗:學習C語言.考試過關就算學會了:課題專案中.只要程式能夠編譯 執行.並且輸入。輸出滿足要求就算了事。這些做法是不行的。寫程式的時候.大家必須多想想如何把程式寫得更加精煉、高效、高質量。建議大家爭取在大學四年中積累編寫十萬行程式碼的經驗。我們必須明白的是:好程式設計師是寫出來的.不是學出來的。 3.求實幹。 不要輕視任何實際工作.比如一些看似簡單的編碼或測試。要不懈追求對細節一絲不苟的實幹作風與敬業精神。我發現不少程式設計師對於知識的掌握很膚淺.不求甚解.沒有好奇心.不會刨根問底。比如.學會了c++.是否瞭解一個物件在編譯後。在彙編程式碼中是如何被初始化的?這個物件的各個成員在記憶體中是如何存放的?當一個成員函式被呼叫時,編譯器在彙編程式碼中加入了哪些額外的動作?虛擬函式的呼叫是如何實現的?這些東西恐怕在程式語言或編譯原理中都沒有詳細提到,只有通過踏實的實幹才能真正掌握。 4.重視數學學習。 數學是思維的體操,數學無處不在。學計算機至少要學習離散數學、概率論、布林代數、集合論和數理邏輯。這些知識並不難.但是對你未來的工作幫助會很大。尤其當你對一些”數學密集型”的領域如視訊影象處理等有興趣時,這些知識將成為你手中的利器。 5.培養團隊精神. 學會與人合作。今天的軟體工程早已經不是一個人可以單獨操作的.而必須靠團隊合作才能成功。不懂得合作的人是不能成大器的。大家要多去尋找可以與人一起做專案的機會。 6.激勵創新意識. 培養好奇心,不要死記硬背。沒有掌握某種演算法技術的根本原理,就不會有應變和創新的能力。想成為一位好程式設計師{其實從事任何一個行業都是如此),重要的是要養成鑽研,好奇.創新,動手,合作.的優秀習慣。不滿足於填鴨.不滿足於考試交差,不滿足於表象。這不是學幾門課能夠一蹴而就的。 7.有策略地“打工”。 在不影響學業的前提下,尋找真正有意義的暑期工作或兼職。去找一個重視技術的公司,在一個好的“老闆”指導下完成真正會被使用者使用的程式。不要急於去一個要你做“頭 而獨擋一面的地方,因為向別人學習才是你的目的。找工作也是一樣,不要只看待遇和職銜,要挑一個你能夠學習的環境,一個願意培養員工的企業,一個重視你的專業的公司。最後,還要挑一個好老闆。