北京北大青鳥校區(qū)總結(jié):優(yōu)秀軟件工程師的特質(zhì)(6-10)

如何做到百里挑一的軟件工程師?通州北大青鳥校區(qū)繼續(xù)為你分析:

相關(guān)閱讀:優(yōu)秀軟件工程師的特質(zhì)(1-5)

6. 善用現(xiàn)有代碼
從發(fā)明新語言到從寫函數(shù)庫,忽視并重寫那些已經(jīng)存在并已能工作的奇怪驅(qū)動力,已經(jīng)造成大量軟件開發(fā)的失敗案例。一位明星工程師會專注三種基本類型的重用:第一,內(nèi)部基礎(chǔ)架構(gòu)的重用,相應(yīng)代碼是他自己或同事編寫的;第二,使用第三方的函數(shù)庫,比如JDK。最后,研究使用某些大型網(wǎng)絡(luò)服務(wù)商提供的相應(yīng)服務(wù),比如Amazon。總之,正確善用現(xiàn)有的代碼,使得軟件工程師能真正專注于最為重要的事情上——應(yīng)用程序本身。

7. 專注可用性
優(yōu)秀的工程師通常都專注于用戶。無論用戶是企業(yè)還是個人,無論是為消費(fèi)型的軟件公司還是投資銀行,需要關(guān)注的都是可用性。用戶如何和系統(tǒng)交互?系統(tǒng)是否提供一種簡單、直接和平穩(wěn)的操作體驗?優(yōu)秀工程師努力工作是為了什么?不正是讓系統(tǒng)簡單并易于使用。他們無時無刻都會想到用戶,不會嘗試去發(fā)明那些令人費(fèi)解,只有極客才能理解并欣賞的東西。記住,軟件是供他人使用,不是做給自己看的“藝術(shù)品”。所以,在軟件開發(fā)過程中,一直要把“用戶”放在心中。

8. 編寫可維護(hù)的代碼
北京北大青校區(qū)認(rèn)為,軟件工程師的另外一個小秘訣是:編寫優(yōu)秀代碼和糟糕代碼所花費(fèi)的時間是一樣多。一位訓(xùn)練有素的工程師,會從第一行代碼開始就考慮可維護(hù)性和代碼的演化。沒有任何理由編寫“丑陋”的代碼、長達(dá)數(shù)頁的函數(shù),或是稀奇古怪的變量名。

優(yōu)秀的工程師編寫代碼會遵循命名慣例,代碼編寫緊湊、簡單和不過度炫耀聰明。代碼的每一行,都應(yīng)恰如其分地展現(xiàn)出其原有目的。在給不便理解的代碼(塊)合理注釋時,別忘了命名規(guī)則。清晰明了的函數(shù)名和變量名可以讓代碼不言而明。

9. 能用任何語言編程
優(yōu)秀的軟件工程師活血有自己一門特別鐘愛的編程語言,但從不會執(zhí)迷于當(dāng)中。如今已有很多優(yōu)秀的編程語言,也就是說,如果你只會使用其中一門語言,說明你缺乏多樣性。你可以用Java、C#或C++編寫任何現(xiàn)代軟件,可以用PHP、Perl或Ruby編寫任何網(wǎng)站的后臺。簡而言之,編程所用語言,遠(yuǎn)遠(yuǎn)沒有語言相應(yīng)的函數(shù)庫重要。優(yōu)秀的工程師能夠認(rèn)知到這一點(diǎn),并愿意去學(xué)習(xí)新語言、新函數(shù)庫和構(gòu)建系統(tǒng)的新方法。

10. 知曉基本的計算機(jī)科學(xué)知識
最后,優(yōu)秀工程師最重要的特質(zhì)就是:扎實的基礎(chǔ)。北京北大青校區(qū)認(rèn)為,優(yōu)秀的工程師或許并沒有計算機(jī)科學(xué)的學(xué)位,但他必須知道基礎(chǔ)——數(shù)據(jù)結(jié)構(gòu)和算法。如果不知道哈希表,或者不知道鏈表和數(shù)組之間的差別,你如何構(gòu)建一款大型的軟件?這些都是每位從事軟件開發(fā)的開發(fā)人員應(yīng)當(dāng)知道的。算法也同樣重要,從二分查找到各種排序,到圖形遍歷,一位明星工程師必須知道并內(nèi)在消化這些基礎(chǔ)東西。因為這些基礎(chǔ)就是你在構(gòu)建任何現(xiàn)代軟件中做抉擇時的必備品。

以上就是北京北大青鳥校區(qū)為大家總結(jié)的優(yōu)秀軟件工程師特質(zhì)。最后通州北大青鳥校區(qū)還要提醒大家,當(dāng)今世界,軟件技術(shù)日新月異,一名優(yōu)秀的軟件工程師不僅要從書中獲取知識,更要盡可能從其他途徑來學(xué)習(xí)經(jīng)驗和知識。

北大青鳥網(wǎng)上報名
北大青鳥招生簡章