毕业后想成为一名软件开发工程师,应该如何学习,大牛给出建议!
畢業(yè)后想成為一名軟件開發(fā)工程師,應該如何學習,我整理了一下,覺得可以如下幾個過程,逐步深入。希望對大家有幫助。
? ? ? ? ? ? ? ? ? ? ??
1、基礎
這是每個開發(fā)者的起點。開發(fā)者剛剛學會了某種語言, 比如C語言,學習了基本的數(shù)據(jù)結構和算法,并通過一些練習對知識點進行鞏固。這些練習主要以課后練習為主,是一些簡單的基礎概念的練習,比如打印輸出、接收用戶的輸入、數(shù)組的遍歷、排序,或者鏈表等。
接下來是做一些簡單的項目,這些項目沒有復雜的算法和高深的領域知識,比如數(shù)據(jù)的統(tǒng)計分析、產(chǎn)品的售后管理系統(tǒng)等。這些項目雖然簡單,卻是一個真實完整的項目。不僅練習了開發(fā)者對語言的應用能力,也體會了軟件開發(fā)的全生命周期,即軟件工程,從項目的需求分析,到設計開發(fā),到軟件發(fā)布和項目驗收,最后到軟件的維護。
通過簡單的項目,掌握了對語言的駕馭能力,并熟悉了軟件工程。隨著能力的提升,慢慢地就會接觸更復雜的項目,使自己能力得到進一步的鞏固和提升。
能力的提升方面包括:對語言的應用得心應手,對軟件的設計駕輕就熟。接觸并熟悉更多的語言,如動態(tài)語言Pyhton、腳本語言Bash、新興語言Golang、Swift等。通過語言間的對比,對語言的優(yōu)勢和缺點又比較清晰的了解,從而在項目中合理選擇語言。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
2、架構設計和系統(tǒng)分析
隨著項目越做越多,會發(fā)現(xiàn)多數(shù)是在重復,到了一個瓶頸。這是可能要閱讀大量的書籍,向軟件架構和系統(tǒng)分析轉(zhuǎn)型。在設計軟件時,要多留意架構設計。軟件架構可以通過演化得到。但是若能看得更遠,提前做些設計,會事半功倍。
這個階段,可能要花大量的時間在業(yè)務領域。因為軟件技術已經(jīng)暫時不需投入太多精力了,也有時間關注業(yè)務領域了。熟悉業(yè)務領域,能分析用戶的需求和約束條件,寫出信息系統(tǒng)需求規(guī)格說明書,制訂項目開發(fā)計劃等,能根據(jù)實際工作環(huán)境,評估和選用適宜的開發(fā)方法和工具;能按照標準規(guī)范編寫系統(tǒng)分析、設計文檔等。在實際項目中鍛煉系統(tǒng)架構和系統(tǒng)分析能力。
另外C/C++就是一個既可以強化思維能力,又可以打好編程基礎的編程語言,你要做做軟件開發(fā),成為核心程序員的話,就來摳摳學習C/C++吧!你如果感覺自學C/C++語言有困難的話,C/C++編程學習,六零四,一六8和917。即使是零基礎的學習者,都可以一起成長進步。愿意的話,可以考一個系統(tǒng)架構師或者系統(tǒng)分析師。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
3、基礎算法和項目管理
發(fā)展到這個水平后,對軟件技術和業(yè)務領域都比較熟悉。所謂窮則獨善其身,達則兼濟天下。很可能會帶帶新員工。這是練習領導力的一個機會,可以體會一下如何帶人。為下一步帶團隊打下基礎。可以把手上的一些事情安排給他們做。自己抽身出來研究更重要的事。比如研究基礎算法、拓展新的領域等。
其實到這個階段有兩個選擇,可以向項目管理進一步,做項目經(jīng)理。也可以鉆研基礎領域,做領域?qū)<摇?/p>
希望對你有幫助。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結
以上是生活随笔為你收集整理的毕业后想成为一名软件开发工程师,应该如何学习,大牛给出建议!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C/C++好不好学习呢?
- 下一篇: 如何在Ubuntu中使用root账号登录