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

現(xiàn)如今,無論是什么行業(yè)的公司,都愿意把業(yè)務、工作放到互聯(lián)網(wǎng)上。因此IT人才成為任何一家企業(yè)都不可或缺的崗位,尤其是開發(fā)軟件的人——軟件工程師正顯得越發(fā)重要。但是,你該如何發(fā)現(xiàn)那種百里挑一的程序員呢?通州北大青鳥學校總結(jié)出優(yōu)秀軟件工程師的特質(zhì),按照這些特質(zhì)去完善自己的工作能力吧!

1. 熱愛編程
2. 完成事情
3. 持續(xù)重構(gòu)代碼
4. 使用設計模式
5. 編寫測試
6. 善用現(xiàn)有代碼
7. 專注可用性
8. 編寫可維護的代碼
9. 能用任何語言編程
10. 知曉基本的計算機科學

1. 熱愛編程
編程是一種為了滿足興趣而心甘情愿去做的勞動。和其他任何職業(yè)一樣,唯有真正的熱情,才能完成真正的偉大事情。這里有個誤解,認為編寫代碼是機械化并純科學性的。事實上,最優(yōu)秀的軟件工程師能把能量、獨創(chuàng)性和創(chuàng)造力融入到每一行代碼中。偉大的工程師知道何時該把代碼雕琢至完美,知道何時把大型系統(tǒng)像拼圖一樣組裝到一塊。熱愛編程的工程師從構(gòu)建軟件中獲得滿足,正是興奮感和成就感,才造就了喜愛編程的明星工程師。

2. 完成事情
有很多技術(shù)人員只談論軟件而不編寫代碼。而偉大軟件工程師會真正去編碼,這也是他們最為重要的品質(zhì)之一。他們是實際做事的人。聰明人都知道,解決問題的最佳途徑是直面問題,而不是花上數(shù)周來設計復雜又不必要的架構(gòu)和函數(shù)庫。優(yōu)秀工程師應當會問:解決手頭問題的最簡單方法是什么?最近的軟件開發(fā)方法——敏捷實踐,正是專注那個。它的思想是,把復雜的項目拆分為短小的迭代,每個迭代只關(guān)注一小部分的增量功能。因為每個迭代對應的編碼只需要數(shù)周,所以功能易于管理并簡單。

3. 持續(xù)重構(gòu)代碼
重新塑造代碼的原則稱為“重構(gòu)”,重構(gòu)背后的原始思想是:改善代碼而不改變其功能,移動調(diào)整部分代碼以確保系統(tǒng)不腐,還有確保系統(tǒng)完成基于當前需求該完成的事。軟件工程師要通過最佳方式來持續(xù)完善自己的代碼,以達到目標。(北京北大青鳥學校

幾十年的軟件開發(fā)文化要求我們不應該去改變正常工作的東西。然而隨著時間推移,老舊代碼變得不穩(wěn)定和不兼容。而重構(gòu)正好可以改變這一狀況,因為我們是代碼的主人,不是它的奴隸。重構(gòu)在工程師和代碼之間建立起持續(xù)的“對話”,并帶來所有權(quán)、確定性、自信心和系統(tǒng)的穩(wěn)定性。

4. 使用設計模式
在我們所處世界,不管是自然界還是人類行為,模式無處不在。軟件工程自然也不例外。模式就是不斷重現(xiàn)的跨語言跨系統(tǒng)的場景和機制。一位優(yōu)秀的工程師通常能識別并利用模式,而不是受制于模式。工程師不應(強制)讓系統(tǒng)去適應某種模式,而需發(fā)現(xiàn)在系統(tǒng)中使用模式的時機(恰當使用模式)。在使用模式來確保正確性時,應借鑒利用前人的智慧結(jié)晶,使用以前能正當解決特定工程問題的方法。

5. 編寫測試
如果你認為軟件工程師不需要測試,那就大錯特錯了。如果你不做測試,怎么能確保代碼就能正常工作?敏捷實踐中的“單元測試”已獲得普遍認可,因為它注重編寫測試來反映代碼是否有效。隨著系統(tǒng)增大,測試也隨之增大。

有經(jīng)驗的工程師知道并了解測試的價值所在,因為測試的目的就是創(chuàng)建一個能正常運作的系統(tǒng)。優(yōu)秀的工程師通常會確保出現(xiàn)過一次的Bug不會再出現(xiàn)第二次。但優(yōu)秀的工程師也知道,不應該浪費時間寫那些瑣碎或多余的測試,而需要專注測試各個組件中的核心部分。(北京北大青鳥學校,未完)

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