當前位置:學問君>人在職場>就業指導>

程序員學什麼樣的知識才能賺錢[3]

學問君 人氣:6.42K

你發現什麼沒有,其實C程序員如果做企業數據應用,一般需要具有編譯原理的知識,我們一方面要實現用戶的業務,還需要寫一套Java這類腳本語言給用戶做二次開發用,說白了,就是我們自己實現一套lamp體系,呵呵,這不是又費馬達又費電嘛,因此,我前文說,做數據庫應用,最好直接用Java,直接用C,成本太高,而且不容易滿足用戶需求。

程序員學什麼樣的知識才能賺錢[3]

說到這裏,你又發現什麼沒有?C語言之所以難學,並不是C本身難學,而是如果要成爲一個C程序員達到實用級的地步,需要掌握很多方面的知識,這些知識,書上可能有,也可能沒有,沒有的,就要靠鑽研,靠實戰,靠自己去想通,因此,很難透過K書成爲C程序高手的。建議你學習時,關注C這個特點。

做遊戲和嵌入式兩種呢,我可以根據經驗講一點:

如果從事遊戲的話,很多時候是和圖形打交道,目前的遊戲,趨向是大型化的視頻圖形遊戲(包括大型網絡遊戲、電視遊戲機的遊戲)和小型化的終端遊戲(手機類、PDA遊戲),這兩種比較好賣,至於中型規模的PC遊戲,由於盜版太嚴重,已經很少人做了。僅僅是一些遊戲公司爲了宣傳自己,會出一些經典的大作。

嗯,硬件廠商爲了宣傳自己的新板卡,如新的圖形顯示卡,會拿出錢來,請遊戲公司做一些針對該型板卡特定優化過的遊戲,以刺激廣大用戶對硬件升級換代,這也是一條財路,很多遊戲,在面市之前,就已經從硬件廠商獲得了足夠的利潤,並不需要從零售市場獲取利潤。我們在電腦市場看到,幾乎每出現一款遊戲大作,就帶來一次顯卡,甚至PC機硬件的升級換代熱潮,其實背後就是這個故事。

 

不過呢,遊戲引擎我還是建議你最好不要去做,因爲做這個成本太高了,很少有公司去做,而這些公司,一般都是歐美公司,對人員要求很高,輕易不會招收亞洲國家的程序員,因此,學這個好比屠龍之技,看起來是很酷,但是實際上工作機會很少,甚至不比中彩票來得高。

另外,做遊戲引擎不好玩的,因爲現在也都細分了,做引擎的公司一般自己不出遊戲,最多出點Demo,他們就是提供高性能引擎,而不是好玩的遊戲,而遊戲公司,則是購買引擎,然後開發具體的遊戲內容。比如Quake和虛幻的引擎,就很多家遊戲公司買去做自己的遊戲。其實很多遊戲引擎,目前也提供腳本語言,即裏面用C實現了另外一套語言。

遊戲公司其實主要是美工建模,繪圖,企劃編故事情節,程序員反而很少,更多地是使用腳本語言,在引擎基礎上做二次開發而已。因爲遊戲公司就是做好玩的遊戲,至於具體用什麼技術,其實他並不是很關心。說不定,如果你哪天進個遊戲公司,會發現自己又見到Java語言這個熟人,呵呵,那個時侯會不會有欲哭無淚的感覺?

其實這也是社會分工的不同,好的引擎程序員,更多的是個數學家,強調邏輯思維,你讓他去寫個美少女夢工廠,如何抓住少女的心,還不如殺了他,呵呵。

而做嵌入式系統,其實也有訣竅。嵌入式系統,目前我們看到的手機應用僅僅是很小很小的一類,更多地,嵌入式系統是應用到工業控制領域,從大型機械設備的控制,飛機、汽車輪船的控制系統,甚至到十字路口一個紅綠燈,裏面都是嵌入式系統。

目前有個現象,嵌入式好賺錢,很多學軟件的同學都想找嵌入式工作,但是,畢竟在這個領域裏面,給手機做遊戲的就那麼幾家公司,不可能吞下所有的'人才,更多的是需要自動化控制人才,因此,這類軟件轉嵌入式的人,進去一般都有點縛手縛腳的感覺,總覺得知識上欠一點,又不好補。

其實,嵌入式應該是最簡單的,比如說驅動,就很多硬件廠商要人,而驅動其實就是做一套打口讀口的api,很簡單,最多做的時候注意點,別用太複雜的算法,保證計算速度而已。

但是你注意到沒有,嵌入式其實主要是和硬件打交道,硬件知識必不可少,至少,計算機組成原理,數字電路,模擬電路要很熟,最起碼,你要知道開關量和模擬量,要知道集成電路的選通信號和真值表,對於地址表的編址要很敏感,對於常用的集成電路塊的特性,比如8235等,要比較瞭解。否則,是寫不好嵌入式程序的。

因此,我以前有筆記說,嵌入式開發,很多時候軟硬件不分,我見過的很多嵌入式工程師,其實也能自己畫一些簡單的電路板,至少,他在設計時,知道哪些功能硬件來做更合適,而不是一味的走軟件路子。