如何做到百里挑一的軟件工程師?通州北大青鳥校區繼續為你分析:
相關閱讀:優秀軟件工程師的特質(1-5)
6. 善用現有代碼
從發明新語言到從寫函數庫,忽視并重寫那些已經存在并已能工作的奇怪驅動力,已經造成大量軟件開發的失敗案例。一位明星工程師會專注三種基本類型的重用:第一,內部基礎架構的重用,相應代碼是他自己或同事編寫的;第二,使用第三方的函數庫,比如JDK。最后,研究使用某些大型網絡服務商提供的相應服務,比如Amazon。總之,正確善用現有的代碼,使得軟件工程師能真正專注于最為重要的事情上——應用程序本身。
7. 專注可用性
優秀的工程師通常都專注于用戶。無論用戶是企業還是個人,無論是為消費型的軟件公司還是投資銀行,需要關注的都是可用性。用戶如何和系統交互?系統是否提供一種簡單、直接和平穩的操作體驗?優秀工程師努力工作是為了什么?不正是讓系統簡單并易于使用。他們無時無刻都會想到用戶,不會嘗試去發明那些令人費解,只有極客才能理解并欣賞的東西。記住,軟件是供他人使用,不是做給自己看的“藝術品”。所以,在軟件開發過程中,一直要把“用戶”放在心中。
8. 編寫可維護的代碼
北京北大青校區認為,軟件工程師的另外一個小秘訣是:編寫優秀代碼和糟糕代碼所花費的時間是一樣多。一位訓練有素的工程師,會從第一行代碼開始就考慮可維護性和代碼的演化。沒有任何理由編寫“丑陋”的代碼、長達數頁的函數,或是稀奇古怪的變量名。
優秀的工程師編寫代碼會遵循命名慣例,代碼編寫緊湊、簡單和不過度炫耀聰明。代碼的每一行,都應恰如其分地展現出其原有目的。在給不便理解的代碼(塊)合理注釋時,別忘了命名規則。清晰明了的函數名和變量名可以讓代碼不言而明。
9. 能用任何語言編程
優秀的軟件工程師活血有自己一門特別鐘愛的編程語言,但從不會執迷于當中。如今已有很多優秀的編程語言,也就是說,如果你只會使用其中一門語言,說明你缺乏多樣性。你可以用Java、C#或C++編寫任何現代軟件,可以用PHP、Perl或Ruby編寫任何網站的后臺。簡而言之,編程所用語言,遠遠沒有語言相應的函數庫重要。優秀的工程師能夠認知到這一點,并愿意去學習新語言、新函數庫和構建系統的新方法。
10. 知曉基本的計算機科學知識
最后,優秀工程師最重要的特質就是:扎實的基礎。北京北大青校區認為,優秀的工程師或許并沒有計算機科學的學位,但他必須知道基礎——數據結構和算法。如果不知道哈希表,或者不知道鏈表和數組之間的差別,你如何構建一款大型的軟件?這些都是每位從事軟件開發的開發人員應當知道的。算法也同樣重要,從二分查找到各種排序,到圖形遍歷,一位明星工程師必須知道并內在消化這些基礎東西。因為這些基礎就是你在構建任何現代軟件中做抉擇時的必備品。
以上就是北京北大青鳥校區為大家總結的優秀軟件工程師特質。最后通州北大青鳥校區還要提醒大家,當今世界,軟件技術日新月異,一名優秀的軟件工程師不僅要從書中獲取知識,更要盡可能從其他途徑來學習經驗和知識。