程序員學什么樣的知識才能賺錢[1]
如果我們要討論C的學習路徑,恐怕要失望了。因為C和Java語言并不一樣。并沒有前人規(guī)劃好的必然成功之路。
Java語言由于面向應(yīng)用面相對狹窄,框架模板眾多,最重要的,其主要工作方向比較確定,就是做基于網(wǎng)絡(luò)的`跨平臺數(shù)據(jù)應(yīng)用為主,因此,其發(fā)展方向很容易確定,學習路線也比較好規(guī)劃。
但C顯然不是這樣,C應(yīng)用面太廣,可以說,匯編能做的事情,C就能做,甚至做得更好,也就是說,我們能想出來的計算機軟件應(yīng)用,其實都可以由C來實現(xiàn),僅僅是成本高低而已。
而不同的應(yīng)用,除了計算機軟件編程知識之外,還需要很多應(yīng)用相關(guān)的知識,這就造成了C程序員往往也需要成為自己應(yīng)用方向上的半個專家,這就比較麻煩了,這么多的應(yīng)用方向,寫游戲的知識儲備,和寫驅(qū)動顯然不一樣,與寫操作系統(tǒng)和編譯器的方向又顯然不一樣,因此,很難說一個C程序員需要掌握哪些知識,才夠用。
以我自己為例子,我做程序差不多快20年了,做C也超過15年,做過游戲,工業(yè)控制,電子教育,網(wǎng)絡(luò)傳輸?shù)雀鞣N軟件,我總結(jié)自己的知識儲備,也僅僅覺得自己在數(shù)據(jù)傳輸方面有一點心得,并且對于C和C++語言怎么實現(xiàn)0Bug程序設(shè)計,有點經(jīng)驗而已,真不敢說自己什么都會。
另外,C語言之所以難學,并不是說它自己多難,真正的問題在于,C語言偏底層,只要我們一做應(yīng)用程序,或多或少都需要調(diào)用很多操作系統(tǒng)相關(guān)的api來完成工作,Windows下,如果我們不懂Win32API,則很難寫出合用的代碼,C語言玩得再熟都不行,Linux下對于各種系統(tǒng)和應(yīng)用級api,也需要不斷查詢man,否則根本寫不下去。所以,要想成為C程序員,至少要學習操作系統(tǒng),通常,至少應(yīng)該把Windows和Linux常見的api學一遍。MFC是Win32API的C++框架表示,最好也學一點。
其實這已經(jīng)帶出另外一個話題,現(xiàn)代開發(fā),C和C++一般不分,C++到了函數(shù)內(nèi)部,其實是C,而C呢,有很多特性寫程序不夠方便,也需要使用很多C++的特性,如默認參數(shù),如引用等等。所以,學習C,最好和C++套著學,都看看。呵呵,這已經(jīng)是兩門語言了。
還有一個問題,不管是C還是C++,總是各個具體的操作系統(tǒng)上開發(fā),Windows和Linux有差異性,很多庫函數(shù),常量定義都不一樣,因此,C和C++一般說來,很難做到程序通用,需要使用大量的編譯宏,這需要了解語言之外的東西,即編譯器的很多特性,不過,很可惜,關(guān)于編譯器特性,目前的資料很少,我很多都是摸索的。
【程序員學什么樣的知識才能賺錢[1]】相關(guān)文章:
外匯怎么才能賺錢的理財知識06-21
怎么養(yǎng)豬才能賺錢06-21
做網(wǎng)站怎么才能賺錢06-19
什么樣的小本生意賺錢02-07
什么樣的小本生意比較能賺錢02-08
什么樣的學生適合學編導09-09
什么樣的水平才能過二級筆譯?10-01
干果加盟店要怎么經(jīng)營才能賺錢06-20