程式設計師學什麼樣的知識才能賺錢[3]

才智咖 人氣:6.22K

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

程式設計師學什麼樣的知識才能賺錢[3]

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

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

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

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

 

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

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

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

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

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

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

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

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

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