北京北大青鳥校區(qū)學術部提供
1、針對面向?qū)ο蟮脑O計與分析:為了讓軟件有更好的可維護性,重用性以及快速開發(fā), 簡短的 OOAD 與它的 SOLID 原則對于每一個軟件工程師來說都是該牢記的。
2、軟件品質(zhì)因素:軟件工程的好壞與軟件的品質(zhì)因素是絕對關聯(lián)的。請在開發(fā)過程中深刻的理解這一點。
3、數(shù)據(jù)結(jié)構(gòu)與算法:深刻理解像數(shù)組,列表,棧,樹,圖,集合等這樣的基本數(shù)據(jù)結(jié)構(gòu) ,并在軟件開發(fā)過程的關鍵部分使用好的算法。這樣整個軟件邏輯就會很清晰了。
4、Big-O符號來標記算法復雜度:在開發(fā)過程中,請務必使用 Big-O 符號來比較兩個代碼段或者不同算法所消耗的時間復雜度,這在開發(fā)高性能軟件項目中是非常重要的。
5、UML 圖:UML 圖已經(jīng)是一個通用的軟件設計與分析的語言。如果你們在開發(fā)軟件的過程中還沒有做 UML 圖,那么給人的感覺就是這壓根就不是軟件工程。
6、正確的衡量軟件開發(fā)進度。(北京北大青鳥校區(qū))
7、設計模式:設計模式是前人在解決各種各樣問題的過程中總結(jié)出來的一套標準對策, 在絕大部分情況下,使用這些模式肯定是利大于弊的。如果你不想在開發(fā)過程中重新造輪子,那么就直接使用它吧。
8、理解操作系統(tǒng)的基本原理:因為所有的應用程序都是直接運行在操作系統(tǒng)這個層級的 ,學習操作系統(tǒng)的基本原理能讓我們對應用程序的底層以及性能有更好的把握。
9、學習計算機組成原理:幾乎所有的應用程序甚至是 OS 都需要與物理硬件打交道的,所以學習計算機組成原理與理解操作系統(tǒng)原理一樣都可以讓你對于應用程序有更深刻的理解。
10、網(wǎng)絡基礎:網(wǎng)絡與計算機組成,操作系統(tǒng)以及傳輸流程都是緊密關聯(lián)的,理解網(wǎng)絡基礎能讓你在開發(fā)過程中得心應手。(北京北大青鳥校區(qū),未完)