想成為一名程序員,大學應該怎麼選擇專業?大學期間應該做些什麼?

LOVE琪少

計算機專業出身的程序員與非計算機專業出身的程序員在基礎編程方面的差別並不大,差別主要在成長空間上,非計算機專業的程序員由於知識結構的缺失,在計算機領域要想有所突破必須補學不少內容。

程序員崗位對大學期間的專業要求並沒有那麼強,目前很多程序員都是非計算機專業出身,甚至不少程序員在大學時期學習的是文科專業。

不少讀計算機專業研究生的同學本科期間也是非計算機專業,通過以往的經驗來看,這部分同學在初期會比較辛苦,經過一段時間的努力後也都能出色的完成任務,所以專業的影響會有,但是並不是非常大。

如果在讀大學時就已經明確要做程序員工作,那麼最好選擇計算機相關專業,這樣的話能打下更好的基礎。另外,目前人工智能、大數據領域對數學的要求比較高,所以對程序員來說,數學專業也是一個不錯的選擇。數學專業的同學在日後的成長空間會很大,因為未來人工智能的發展對算法的要求越來越高,現在不少大數據、人工智能領域的專家都是數學專業出身。

目前隨著大數據、人工智能的發展,很多專家都清楚的意識到基礎學科的重要性,所以在大學期間一定要學好基礎學科,比如數學,數學基礎對計算機領域的研發人員來說還是非常重要的,計算機軟件問題說到底就是個數學問題。

另外,計算機網絡、計算機體系結構、數據庫、數據結構、編程語言、算法導論等課程也是比較重要的,大學期間應該重點學習。如果有機會的話,可以參與一些小項目,一邊學習語言一邊使用。


IT人劉俊明

話說,能提出這個問題的同學,都是對以後生活有所規劃的,對現在生活有所思考的。想當初,本人懵懵懂懂的,拿著招考指南,看著那個學校順眼,結合自己的高考成績,挨個填,想想都好笑,第一志願滑檔之後,被平行志願的第二個學校調劑錄取,從師範學校的化學師範專業調劑成師範學校的計算機科學與技術非師範專業,說多了都是淚,當時真心不知道計算機科學與技術是幹嘛的。

就這樣,稀裡糊塗的上了大學,在大一打算轉專業,打算了一年,最後還是沒轉,就這樣,四年以計算機為伴,如果靠計算機謀生,成長為具有三年多工作經驗的程序員,一路上,是運氣,也是努力,走的平淡而踏實,不出意外,也將繼續走下去。“意外的相遇,註定了一生的結局”,或許說的就是這樣。

言歸正傳,當時上學時不曉得計算機科學與技術是幹嘛的,但是工作這麼久,對程序員這個職業瞭解已經較深了。想成為一名程序員,最直接的專業就是軟件工程和計算機科學與技術,軟件工程師專門培養軟件開發人才的,從一開始就是各種語言的軟件開發、系統性的學習軟件工程的各個階段,而計算機科學與技術是培養綜合性的計算機人才,說的是這麼好聽,但是實際上從硬件、到組成原理、到軟件開發、再到軟件工程,都會學習,但學硬件沒有電子物理深,學軟件沒有軟件工程系統,這就要靠個人在學習專業知識的同時,具備一定的自學能力,在自己喜歡的方向上進行深入探究。總而言之,軟件工程學的系統,對軟件開發的各個環節講的很透,有些學校還會提供一定的實踐機會,與之相對的學費會高一些,普遍在1萬上下,而計算機科學與技術學的很雜,涉及到計算機的各個層次、體系,有機會在計算機的各個環節中去尋找就業機會,其學費相對便宜一些,我們當初是5800。

除了上述說道的,軟件工程和計算機科學與技術,網絡工程、信息安全、物聯網工程、數字媒體技術、智能科學與技術、空間信息與數字技術、電子與計算機工程等專業也屬於計算機類專業,都有一定的可能去做程序員職業,除此之外,我遇到的很多同事是通信工程畢業的、或者直接是學經濟類的,在一定的努力和個人的機遇之後,進入了互聯網公司,成為了一名程序員,所以任何專業都有可能成長為程序員的,關鍵看個人的努力與選擇。

至於大學期間應該做些什麼?我要說的是,儘量要把學業搞好,對於應屆生而言,學業是一個很重要的考量指標,不要等到遇到機會了,結果讓這個給卡住。其他的,對於計算機類專業的同學,多參加一些技能競賽是很有必要的,在這些活動中,結識朋友的同時,也讓自己所學的東西有昇華的可能,在此基礎上,抓住一切機會,去實踐軟件開發的能力,從數據庫設計、系統架構設計、最後到實現,部署運維,有機會經歷過這些,你的大學應該是很有閃光點的,在這些實踐中,你的軟件架構思維就有一定的提升,在面試中都是很好的說辭。軟件著作權,雖然很雞肋,但是找工作時,還是一個比較重要的加分項,有機會也可以考慮去申請,或許這就是你脫穎而出的理由。英語,對於程序員而已,學好英語是一項基本技能,我在這方面比較糟糕,但是還是希望你們能做好,英語四級、六級有條件的話,多去嘗試哈。

說了這麼多,有自己的牢騷,有自己的懵懂,有自己的心得,不一定適用,但是可以參考,但願對有緣看到的各位有所幫助。



夕陽雨晴

我在接近畢業的時候才覺得當年沒有人來指引我,只有自己經歷的這些事情才覺得自己缺少了什麼。現在我來告訴你怎麼做。

既然你對程序員世界感興趣,這一點我覺得非常好,因為興趣是最好的老師,相信你後面學習IT技術也比較方便。

大學及專業

能進985就進985,不能就退而求其次,像北郵、西電、杭電等IT強校也是不錯的選擇。現在各大高校中計算機相關專業的錄取分數一般都在本校的前幾名,所以你要考一個好成績。

其實在找工作時只要你是計算機相關專業的學生,那麼你都可以選擇做一名程序員,當然很多其他專業的同學也會跨行做程序員。舉個栗子,我是網絡工程專業,但是我的工作是軟件開發工程師,並不是什麼網絡工程師、運維工程師,沒有人限制你一定按照自己的專業發展。在大學裡一般第一年計算機各個專業的課程基本一致,都是基礎的課程,比如C++、高等數學、大學物理、離散數學、計算機導論、模電、數據結構等等。後面到了專業課會有區別,擔任這也是基礎,你需要學好前面的知識,後面的課程才會更順利。

計算機相關專業包括計算機科學與技術、軟件工程、網絡工程、數字媒體技術、信息安全等等,當然具體專業還得看你報考的學校的信息、計算機、軟件等學院的情況。

大學應該這樣做!

1.好好學習基礎的課程,比如數學、C++、數據結構等等,後期的操作系統、計算機組成原理、計算機網絡、編譯原理等好好學習。

2.參加ACM比賽,因為你要做程序員,那就要有紮實的算法基礎和良好的邏輯思維,積極參與ACM比賽對你找工作很有幫助。

3.做項目,通過做項目練手,提高自己的實踐能力,最好你的項目不僅有橫向的,還要有縱向的,項目經驗對於以後找工作非常有幫助。

4.實習,如果你的計劃是畢業後直接工作,那麼我推薦你去儘早找實習,儘早確定自己的方向,實習經驗對你進大廠有一定的幫助。

5.好好學習,爭取保研,現在競爭這麼激烈,能保研就保研,研究生可以有更多的選擇,更有優勢。


萌新程序猿

首先看到這個問題,非常恭喜提問者和關注這個問題的人,說明你們對自己的未來有一定的規劃,是從興趣入手,結合興趣選擇專業。選擇個理想的專業,就是走向升職、加薪、贏取白富美、走上人生巔峰的開始。

閒話少說,下面開始回答這個問題。我打算從二個角度回答這個問題:

第一個角度是專業課程的角度,如果打算今後從軟件開發這個行業,最直接的選擇就是軟件工程,這個專業不僅詳細教授開發語言和原理,還講解軟件項目的管理以及生命週期等相關知識,對正確理解軟件開發這個行業。

作為多年的從業者,經過多年的經驗,發現開發這個職業的高級職位,對從業者的綜合能力要求越高,舉個例子,開發出一款C/S或者B/S架構的產品,當這款產品使用人越來越多的時候,軟件中微小的瑕疵,都會引發一些問題,這些問題也許並不是代碼邏輯的問題,也許是TCP的握手和揮手機制的問題,也許是操作系統缺少優化,也許是硬件的瓶頸等等問題,這些問題需要其他的專業知識才能夠解決。因此才會有,類似計算機科學與技術、網絡技術等計算機相關專業,這些專業是有著重講解相關內容,這些課程的內容也是需要深入瞭解和探究的。

第二個角度是職業發展的角度,從1996年開始國內普及計算機和互聯網,現在發展到移動互聯網,軟件開發這個職業,也從非常神秘、備受爭議和崇拜,走向了婦孺皆知,而且觸碼(第一次接觸代碼)年齡也是趨於低齡化,現在很多家長已經在孩子上小學的時候作為興趣班,開始學習編程,使用的語言不盡相同,但是這個趨勢正在形成,而且據說國家開始著手製定升學考試中的編程證書的加分項(道聽途說,如有雷同,純屬巧合),因此編程對於未來的孩子來說,可能更像一門技能,而非職業。雖然人人都會編程,並不代表人人都精通,但是編程也許就不像現在是一種職業了,編程也許就變成了一種工具,一種實現專業想法的工具,或者一種指揮AI的一種工具。

曾經的一家供職的公司是做農業相關,需要利用衛星數據對農田情況進行分析,這個時候用到的不僅僅是軟件開發技術,一套遙感算法才是公司的核心競爭力。也是由此才感悟到,軟件開發是靠高級語言來實現的,而核心算法是靠開發技術來設計的,而公司核心競爭力是靠核心算法來支撐的,因此對於一個公司來說,軟件開發固然重要,但是算法工程師才能支撐公司走向明天。

扯遠了,其實想表達意思,只有一個,軟件開發在未來可能變成人人皆可的事情,選擇這個職業,要麼在專業領域高精尖,要麼就是具有其他領域知識,通過開發的代碼表達出來的複合型人才。


大海的欣

想成為程序員,看看到底你會是碼農還是工程師?

計算機科學,軟件工程等只要你學習C++,Java相關的高級程序設計的專業都可以去選擇這條路。

當然,當程序員不僅僅是你學了C語言這個基礎,你就可以從事的。每天敲代碼的日子是非常痛苦的,小小的一個錯誤,可能就讓你幾個小時打的代碼都白費。



碼農的日子真的很辛苦,並不是所有人都能在鍵盤上妙筆生花,解決一切電腦問題。想象和實踐真的差距非常大。如果不是真的喜歡,我不太建議選擇這條路。


對於計科,軟件工程等專業學習高級程序設計,我提供以下幾點建議。理論要紮實,不然你打幾個小時代碼都不知道自己打的是什麼,費時費力。其次重實踐,多查錯,學會在規則中創作。

要做就做工程師級別的程序員,縱橫在電腦鍵盤上,指間飛舞,以自己的奮鬥創造屬於自己的輝煌。

你怎麼看待程序員,請在下方留言。


烽爝爺

計算機專業,我不是內行,具體方向你還要參考其他兄弟的答案。

說說我舍友老張把,老張是一個胖子。就是週末穿著大褲衩,踩著拖鞋的那種屌絲形象。大一跟我們一起讀的機械學院。掛了兩科。但是是他對電腦一直挺有興趣,高中就有去百腦匯幫忙修電腦。他就想著去轉專業,本來有掛科在我們學校是不能轉的。可能是面試的老師看到那股熟悉的程序員屌絲氣息,加上他有一定的電腦基礎就破格錄取了他。

轉了專業後,他簡直如魚得水,從一個臭屌絲變成了學霸。加上他說本身就是一個段子手。還挺受歡迎的。

最後說下,屌絲只是調侃。不少名人還說自己是屌絲代言人呢。還有對程序員的固有印象也是調侃。每個行業都有很潮的人。

回答題目來,如果你對電腦沒有基礎,還要考慮清楚,計算機大神都不是老師教出來的。如果你有基礎又有興趣,那就放手去做吧。加油

另外大神在貼吧,網吧。供你參考。多看一些技術貼吧。


嗨鏘學長

我是傳智專修學院軟件工程系java方向的學生,將來畢業從事的就是軟件開發工程師,也就是你所說的程序員,選擇專業的時候一定要注意,計算機有很多個專業,如果要做程序員建議選擇計算機軟件開發專業。至於怎麼才能學好,我們老師說過沒有學不會的,就是要多練多敲,多做做項目,我們學校從大一開始就以項目組的形式做項目實戰,現在大一第二學期了,很多學生做出來的項目都可以賣錢了,至於具體的方法一句兩句也解釋不清楚,你可以去我們學校官網看看,上面有很多學生動態,也可以私聊我!


我有故事還有狗

專業選計算機,軟件開發,網絡工程,數學,通信工程,電子信息工程等專業,關鍵是一定要努力學習,特別是底層的東西,一定要學紮實,比如彙編 數據結構,單片機,操作系統原理,還有一些基礎,我也不太懂,我會的只有單片機C語言編程,java應用程序開發,做這個的最多,不過也很容易被替代,只要學個半年,再工作個兩年就能勝任工作,年紀大了精力跟不上,所以一定要做底層,越往底層做工資越高,當然對技術的要求也高,


劉員外2019

專業的話主要是計算機科學與技術還有軟件工程,當然,其他也是可以比如網絡什麼的,但編程而已軟工可能會比較體系吧。

學什麼的話反正學校課堂的學的永遠是基礎,課餘自學才是硬道理,有機會跟老師做項目也是不錯的機會。現在學習資料和學習途徑那麼多,選個自己喜歡的深鑽,總會有意想不到的收穫


vezn

抓緊學習才是硬道理,編程這東西只要腦子還行學的還是快的,大一天天玩,現在感覺時間不夠用了,我要是時光倒流就不玩了,抓緊學,因為這東西簡直是苦海無涯,東西太多了 想成大神就要抓緊


分享到:


相關文章: