本文目錄一覽:
職業前景規劃 之 C語言程序員
做決定之前先把跳槽的優缺點寫下來,再把留下來的優缺點寫下來,然後比較,看哪個更合適。C還是很有前途的!
學c++,c語言將來能找那些工作啊?
相信很多人接觸編程都是源於大學期間的那堂C++語言程序編程,但是這門課卻只告訴了你編程語言是什麼,卻沒告訴你要怎麼去熟練掌握編程。所以,不可避免的是許多人在畢業前夕才發現雖然學會了C++,但是好像卻不知道能幹什麼,能找什麼樣的工作,能去什麼樣的公司。所以呢本文就從C++的角度出發,談談我對C++這門語言的理解。
咱這回不去談什麼複雜的應用場景,也不去聊語言底層的優化特性,就說說在大學裡學了C++出來到底能幹啥。當然了,由於C語言跟C++親密的關係,咱就混淆一併講了,道理是差不多的。
1 實驗室開發
不敢說C++是世界上最好的語言,但C++基本是工科生中的大語言。暫且不說計算機專業,很多工科專業,比如電信、電氣、通信等專業,基本上正常的學習中都會使用到C++。
都說C++兼具面向過程以及面向對象的特性,既擁有比較優秀的運行速度,又有良好的大型項目開發能力,那簡直可以制霸高校實驗室了。當然我們知道,另外一門同樣在高校實驗室里與C++不相上下的語言,就是Matlab了。
像我研究生期間就是左手Matlab試探,右手C++優化。論文專利什麼的就靠這兩種語言雙管齊下。還記得在實驗室里,基本所有的算法都是用C/C++寫的。
最開始就學C++的基本都是老理工男了。就算指針再怎麼難理解,虛函數表再怎麼無情,也磨不滅我們這些工科生對編程的熱情。
2 後端開發
不過等到真正要找工作的時候,就不是那麼回事了。聽說現在由於算法崗已經是諸神黃昏了,導致一大批人沖向了後端開發。
而主流的後端開發語言就那麼幾種,以Java、C++領銜,Python和Go緊跟其後。作為寫了這麼多年的老C++ coder了,哪能不去湊個熱鬧。
所以呀,學了C++之後,第一選擇當然就是去面試後台開發的崗位啦。只不過我們都常說一句話,語言都不是最重要的。那對於學了C++想找後端開發的同學而言,什麼最重要呢?
其實軟件開發工程需要掌握的技能不外乎那麼幾點,各種經驗分享和面經都已經說爛了。但是那些只是大的方向,具體涉及到的概念和技術點非常多,在這裡也沒辦法全部羅列。總的來說,想通過C++找一份合適的後端開發工作,我建議可以從以下幾個方面來提升自己:
一是、紮實的編程基礎。
這個基礎紮實首先意味着你比較熟悉C++這門語言了,知道不同版本的語言特性(比如C++11以及新出的C++20的區別),對常見的語言機制(比如多態、虛函數表、模板等)的底層有自己理解。
雖然說不看重你用什麼語言,但是最起碼你得比較熟練的使用一門語言吧。怎麼才算熟練呢,大概C++底層機制、多線程編程、跨平台編程這些你都需要有所了解吧。
除此之外,編程能力的素養還體現在算法思想和數據結構的理解上。畢竟程序的基礎就是算法和數據結構嘛。所以一些基本的數據結構,比如鏈表、數組、二叉樹、隊列之類的,還有一些基本的算法思想,比如貪心、分治、動態規劃等都最好需要好好掌握一下。二是、系統的理論知識。
這個就是科班與非科班比較明顯的差距所在了。很多非科班的同學其實編程能力很強,但是由於沒有接受過系統的理論學習,所以在理論學習上會比較吃虧。而後端開發涉及的東西比較多,從網絡到性能再到架構,都需要系統的計算機理論來支撐的。
所以如果連計算機網絡、操作系統、計算機組成原理、編譯原理這些書都沒見過的同學,需要趕緊買幾本回來壓壓驚了。
三是、後端基礎。
想去做後端開發,起碼得知道後端是什麼吧。這就意味着你得知道一些基本的軟件工程、軟件架構、設計模式等知識。同時,搞個後端哪能不懂數據庫呢,那你不得再學些諸如MySQL、Redis等數據庫的基本操作嗎?
當然到這,可能也就算是個入門水平。真正上手後端開發的時候,像微服務、中間件(Kafka/Zookeeper/Hadoop等)等相關概念與技術的學習不也得提上日程了嘛。
當然對於校招生來說,由於的確是缺少大型的上線項目經驗,所以對後端基礎的要求不會太高,更多的是看編程能力和計算機理論基礎。不過倘若是已經工作想轉行的同學來說,後端基礎還是會比較看重的。
這三點是在我看來目前互聯網公司比較看重的地方,大家可以對照着反思自己是否具備這樣的能力了。如果還沒有,可以抓緊時間好好準備準備。
3 客戶端開發
畢竟C++已經是一個很成熟的語言了,所以除了後端開發其實它還有很多其它的開發崗位可以選擇。自然而然的,就是客戶端開發了。
相信大多數學C++的同學都用過C++寫桌面軟件吧。那時候估計還是用MFC,照着代碼書上敲一遍就能寫一個比較簡單的界面了。所以如果不想做後端,完全可以靠C++找一份客戶端開發的工作。
只不過,客戶端也並不容易呀。做客戶端同樣也需要紮實的編程基礎和計算機理論基礎,同時可能還要熟悉Windows/C++編譯鏈接機制、QT客戶端開發技術體系、Windows消息機制等技術。
所以,假如你學的是C++,同時也不在乎業內莫名其名的崗位歧視鏈的話,找一個客戶端開發的工作也是非常不錯的。只不過相較於後端開發,你可能需要重新審視客戶端這個角色。
c語言 想了解一下C語言-程序員的職業規劃(還有常用編譯器)
用c語言比較好,效率比較高。
用java也可以,好調試。
我用過以上兩種做過編譯器,別的語言不好說。
做個編譯器不難,一個人做也用不了太多時間。但相關的東西要做的話就花時間了。比如編輯環境,比如調試跟蹤器。
祝成功!
c語言前景規劃
我做了3年的程序員java的 現在轉行做DBA了。 不建議你做遊戲,遊戲都是C++做的。C做嵌入式可以,不過嵌入式好多是需要用彙編的,也有是C代碼內嵌彙編。java沒出息,背誦的太多。我自學過C++ 數據結構 算法,感覺C++確實強大。不過你要是真想當程序員的話,英語一定要到母語水平。國內程序員尤其是java一過30歲必須轉項目經理或者轉行,知道為什麼嗎,因為國內的環境培養不出厲害的程序員,正常一個牛X的程序員從工作0接觸程序員需要10年才能到高端,歲數都至少35歲了。國內 的頂級公司純技術類的只有華為一個,待遇也是最好的,比百度強多了。這種公司面試(只要你投程序員的位置)必須考C和C++ 算法,歐美私企也是如此。所以想當好的程序員必須去歐美獨資的企業比如微軟 google之類的,國內只有華為。 這種程序員可以干一輩子,我見過老外的程序員都是40 歲 50歲 主力當打之年。因為智商高的人年齡再大也比IQ低的年輕人要高 的多。
我建議你不管做什麼程序員 ,一定要學好2個: 英語和算法 ,C++和C必須要精通。C指針最重要,C++項目里建議少用指針。
有什麼問題隨時和我說
原創文章,作者:TONYF,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/316558.html