想成為一個軟件工程師?
我自己就是軟件工程師出身,我做Java的。我就這個問題來說下你要學(xué)習(xí)哪些知識。
1. 計算機基礎(chǔ): 軟件工程師最本質(zhì)的工作就是設(shè)計開發(fā)軟件讓計算機去實現(xiàn)指定的功能。既然和計算機打交道,計算機基礎(chǔ)肯定得知道。如果一個軟件工程師連二進制都不知道,這感覺很扯、很詭異!
2. 計算機通信:在互聯(lián)網(wǎng)高速發(fā)展的年代和即將到來的5G大爆發(fā),通信已經(jīng)越來越重要,很有必要了解計算機通信知識。Web開發(fā)到游戲,都會涉及通信。
3. 操作系統(tǒng):了解和明白操作系統(tǒng)的一些基本原理,可以讓我們設(shè)計出更好的軟件。現(xiàn)在有些剛?cè)胄械能浖こ處熯B進程都不知道,實在不應(yīng)該。
4. 數(shù)據(jù)結(jié)構(gòu)和算法: 數(shù)據(jù)結(jié)構(gòu)和算法知識可以讓我們的程序更加高效、合理化。
5. 英語:軟件開發(fā)的語言框架基本是都是英文的,最新的技術(shù)文檔一般也是英文的。良好的英文基礎(chǔ)最好還是具備下。
6. 一門編程語言及其附屬框架:這一點在進入這一行是必須會的,可以說是軟件工程師吃飯的家伙事。這里語言有很多,比如市場份額最大的Java語言,還有最近比較火的Pathy語言等等。
7. 數(shù)據(jù)庫知識:這個也是必須具備的知識,數(shù)據(jù)庫產(chǎn)品很多,Mysql、Oracle,DB2等等。
8. Web前端開發(fā):如果是Java開發(fā),這個也是必須會的。有人說現(xiàn)在是前端時代,也沒錯,用戶越來越注意前端體驗,這也促進了前端技術(shù)的發(fā)展,比如最近10年出來的Javascripts框架就很多,還有像Bootstrap這樣的前端神器。
9. Office辦公軟件:軟件工程師的日常是寫程序,但是也要寫文檔,最基礎(chǔ)的需求文檔、測試文檔等。再比如做幾年轉(zhuǎn)管理,就要設(shè)計大量文檔。
大體上就這么多,希望能對你有所幫助。