- 相關推薦
軟件工程師必須知道的20個常識
作為一名優(yōu)秀是軟件開發(fā)工程師,以下的這些常識你知道嗎?在實際工作中有沒有總結過呢?以下是YJBYS小編搜索整理的關于軟件工程師必須知道的20個常識,供參考閱讀,希望對大家有所幫助!想了解更多相關信息請持續(xù)關注我們應屆畢業(yè)生培訓網(wǎng)!
1.針對面向對象的設計與分析:
為了讓軟件有更好的可維護性,重用性以及快速開發(fā),簡短的OOAD與它的SOLID原則對于每一個軟件工程師來說都是該牢記的。
2.軟件品質因素:
軟件工程的好壞與軟件的品質因素是絕對關聯(lián)的。請在開發(fā)過程中深刻的理解這一點。
3.數(shù)據(jù)結構與算法:
深刻理解像數(shù)組,列表,棧,樹,圖,集合等這樣的基本數(shù)據(jù)結構,并在軟件開發(fā)過程的關鍵部分使用好的算法。這樣整個軟件邏輯就會很清晰了。
4.Big-O符號來標記算法復雜度:
在開發(fā)過程中,請務必使用Big-O符號來比較兩個代碼段或者不同算法所消耗的時間復雜度,這在開發(fā)高性能軟件項目中是非常重要的。
5.UML圖:
UML圖已經(jīng)是一個通用的軟件設計與分析的語言。如果你們在開發(fā)軟件的過程中還沒有做UML圖,那么給人的感覺就是這壓根就不是軟件工程。
6.正確的衡量軟件開發(fā)進度。
7.設計模式:
設計模式是前人在解決各種各樣問題的過程中總結出來的一套標準對策,在絕大部分情況下,使用這些模式肯定是利大于弊的。如果你不想在開發(fā)過程中重新造輪子,那么就直接使用它吧。
8.理解操作系統(tǒng)的基本原理:
因為所有的應用程序都是直接運行在操作系統(tǒng)這個層級的,學習操作系統(tǒng)的基本原理能讓我們對應用程序的底層以及性能有更好的把握。
9.學習計算機組成原理:
幾乎所有的應用程序甚至是OS都需要與物理硬件打交道的,所以學習計算機組成原理與理解操作系統(tǒng)原理一樣都可以讓你對于應用程序有更深刻的理解。
10.網(wǎng)絡基礎:
網(wǎng)絡與計算機組成,操作系統(tǒng)以及傳輸流程都是緊密關聯(lián)的,理解網(wǎng)絡基礎能讓你在開發(fā)過程中得心應手。
11.需求分析:
對于軟件工程來說,需求分析是項目的起點,也是整個項目最最重要的部分。如果這玩意你搞錯了,整個項目的方向也就錯了。
12.軟件測試:
在軟件工程中,測試也是非常重要的。單元測試,黑盒測試,白盒測試,TDD,集成測試等等都是我們必須知道的。
13.獨立管理:
主要是說類庫(JAR,DLL等等)的管理,熟悉使用一些類似Maven,Ant,lvy這樣的知名工具對于大型項目的類庫管理是非常有用的。
14.持續(xù)化集成:
持續(xù)化集成能讓測試大型模塊與組件更加簡單與自動化,關于這一點,你可以去了解Hudson這個工具。
15.ORM:
了解Hibernate這種將對象與數(shù)據(jù)庫表映射工具是非常有好處的,它可以減少你的代碼量并節(jié)省你的代碼維護時間。
16.DI(獨立注入):
DI或者IoC(Inversion of Control)的具體實現(xiàn)框架Spring能讓你創(chuàng)建對象時更加輕松,對于大型企業(yè)級項目更是如此。
17.版本控制系統(tǒng):
VSC工具(SVN,TFS,CVS等)對于團隊合作開發(fā)以及版本控制都是非常重要的。熟練使用這類工具算得上是必備技能。
18.國際化:
通過i18n來將不同語種的字符串存儲在其他文件是讓軟件支持多語種最好的方法。所以i18n在不同的IDE上使用的方法我們應該了解。
19.架構模式:
理解類似MVC,MVP,MVVM這樣的架構模式非常關鍵,這能讓你寫出易維護,簡潔以及方便測試的代碼。
20.編寫干凈的代碼:
你的代碼僅僅只是能夠正常運行是遠遠不夠的,它必須讓編程人員輕易看懂來方便后續(xù)維護,所以,代碼格式以及編寫易讀的代碼技術都是我們需要了解的關鍵點。
相關文章推薦:
【軟件工程師必須知道的20個常識】相關文章:
軟件工程師必須知道的10個概念03-20
必須知道的美國留學租房常識03-25
去西藏前必須知道的28個常識03-04
學化妝必須知道的知識01-09
備考雅思 這些必須知道!03-20
日本留學的必須知道的事項03-18
啞鈴健身必須遵循的健身常識03-03
工程師必須知道的電子電路設計基礎知識03-08