假如給你一次機會重新選擇,計算機專業選C++ 還是Java?

Fny丶樂兮


已經從事軟件開發十幾年,C++和java跟著做過好多項目,相對來講跟C++的感情更加深刻些,畢竟被折騰的時間最長印象也最深刻,剛入行一年就跟著做C++項目,開始被泛型編程裡面的各種規則折騰的夠嗆,發現和自己在學校學的完全不是一碼事,學校學到的C++理論只是皮毛而已,也就是學學面向對象大概是什麼樣子,面向對象的三大特性要真正的瞭解還是需要在項目中才會領悟,然後被技術經理批的無地自容,都開始懷疑自己是不是真的適合做研發,為了能夠跟上項目幾乎天天搞到半夜,就這還是趕不上大部隊,好在沒有放棄堅持下來了。

很多人覺得要能寫程序是不是需要什麼天份,關鍵看毅力能夠挺下來就能堅持到最後就可以了,剛入行的程序員都有被主管懟過的經歷,其實後來想想未嘗不是一種激勵。在當時狀態下可能讓自己很沒有面子,但也是印象深刻,這種場景經歷的次數多了,回過頭就是一種財富,一個對你已經失望之極的人很難嚴厲的對待你。正是經歷了這痛苦的半年也讓自己和C++建立了深厚的感情,從此結下來不解之緣,算是技術生涯裡面的使用最多的編程語言。

後來用java做項目開發是C++技能成熟之後去做的,所以接手去做已經簡單太多了,能深深體會到一種幸福優越感,畢竟java的語法細節和C++不可同日而語,但並不意味著java做起來就比較簡單,java框架思想要求更高,特別是企業級別的後臺的開發,數據量巨大的情況併發以及分佈式處理都需要很深的功底,要達到一定的造詣都需要長時間的積累,所以不要輕易下結論一種編程語言難易,這都是相對的,初級的程序員做的是一些小模塊的功能覺得簡單也很正常,如果參與到框架的設計難度可想而知,不要輕易對一個事物下結論。

從個人性格來講,如果又重新選擇的機會還是選擇C++,畢竟更加喜歡在底層折騰東西,更加喜歡啃底層的硬骨頭,可能是入行早期養成的習慣,喜歡做一些有挑戰性的項目,因為C++這個編程語言還在不停的更新,永遠沒有學習止境的時候倒是很能治癒自己的拖延症,有個東西緊迫著學東西做項目也快,畢竟一個程序員需要緊跟時代的步伐,不能滿足之前做了多少項目混了多少經驗,java做起來相對C++有種很爽的感覺,起碼不用考慮指針的東西,但整體來講還是沒有C++用起來有感覺,所以技術生涯從事的第一個編程語言對於後續的影響還是挺大的, 技術後續掌握了多種編程語言,如同每個人對於初戀都會念念不忘是一個道理。

編程語言本質上講就是一種工具,但選擇不同的編程語言就意味著會選擇不同的編程方向,c/c++主要是底層開發,java,python等屬於高級語言開發方向和未來的編程方向的發展息息相關,其實就是重新選擇一次編程方向,喜歡即所愛。


大學生編程指南


從兩個角度說說這個問題。

先看業界的排行榜,無論是最流行的編程語言還是市場上需求最大的編程語言,JAVA都排在C++以上。

這也符合市場上的情況,在中國對Java程序員的需求要遠遠大於C/C++。Java一般是做行業軟件的,適合功能性快速開發和交付的項目。常見的外包項目用JAVA實現的多,能覆蓋服務器端、遊戲、手機APP等開發需求。這也就是說,如果你大學畢業了會Java,有Java開發的經歷,有自己拿得出來的項目,那麼能夠滿足很多職位的要求,應該能為你爭取到面試。

另一方面,由於Java學習對程序員要求不高,企業會傾向於招聘大量的中檔或者低檔的開發人員,再由一個高級的人員來統籌架構問題。這也造成了Java開發的職位很多都是在外包公司。實際工作時候你會發現很多人入行都是通過培訓班等速成途徑。也就是說你在Java上積澱的能力,可能無法形成護城河效應,容易停留在中低端工作人員的位置。

往上說一層,編程語言之爭常見,但是對於一個資深的程序員來說,語言並沒有那麼重要。相反,打好數據結構和算法的功底才是見真章的地方。同樣是掌握C++和掌握JAVA的人才而言,大致能假設會C++的這位能很快學會JAVA,但相反而言卻不能保證。這就是C++這種偏底層應用的語言對人的訓練保證的效果。這就好比,純數學在業界的需求很小,但是如果你數學功底好,像經濟、物理、生物等專業別人都相信你可以很快勝任。


順勢而圍


個人感覺C++更接近計算機的底層(嚴格的說是c更接近底層),但JAVA是一門功能超強大的編程語言,在世界所有的程序員中,使用JAVA的人最多,而且現在做項目大多都用JAVA語言。

如果你以後想做研究,在計算機語言方面有很深的造詣,建議你向計算機硬件底層方面發展。一定要把底層的東西研究透,那些在上層做事的人,他所用的工具功能不管多強大,功能多炫,他只不過是學了一個工具,而對這些工具的原理或許並不瞭解。

當然了,JAVA語言也蠻不錯,現在用JAVA的人很多,的確有它的商業價值。

要學哪種語言關鍵看你自己想往哪方面發展了。


從不加班的程序猿


關鍵是沒有選專業的機會啊,我專業物理教育,計算機硬件軟件都自學,工作十年了,之前一直很懶,最近弄了塊板子做服務器,放在自己家裡,可以訪問一下我的博客,phubber.com


玉生煙312


我選c++吧 雖然c++複雜特性導致了它學習的難度略高 但是伴隨的也會是諸多好處 讓你更加理解底層知識 也許這在平常中看不出來 但是作為一個程序員的底蘊 會潛移默化的影響著你 思維的蛻變 再者java是去除c++一些複雜的特性得來的 若將來想轉java 很快就能上手 個人見解😁有誤請前輩們指教


空coding


大學裡c是必修吧,我記得我當時第一門語言就是c++,第二門是JAVA,當你把c++理解後,學習JAVA就會變的很容易,因為編程語言大都類似。c++偏底層一點,JAVA偏應用一點,這個就看個人喜好了。其實選擇什麼不重要,重要的是要把你選擇的學精通,做到獨擋一面!


乖乖的搖曳


先就業就Java。

要深入就繞不過C。


三月春雪白了頭


都什麼年代了,怎麼還有人問這中傻不拉幾的問題。


全棧之家


學習精通了都一樣


分享到:


相關文章: