問(wèn)這個(gè)問(wèn)題的,說(shuō)明你對(duì)計(jì)算機(jī)編程還沒(méi)有真正入門。不要相信網(wǎng)上那些什么C語(yǔ)言已過(guò)時(shí),現(xiàn)在是python的天下之類的營(yíng)銷語(yǔ)言。那只是忽悠小白交幾萬(wàn)塊錢去上編程課的。事實(shí)上對(duì)真正的計(jì)算機(jī)入門沒(méi)有什么卵用。
計(jì)算機(jī)語(yǔ)言從早到晚從內(nèi)到外從底層到前端,不同的環(huán)境層次需要不同的語(yǔ)言。
最早沒(méi)有程序設(shè)計(jì)需要這個(gè)概念,就是機(jī)器語(yǔ)言編程。在紙帶上打孔,代表0或1,然后把打好孔的紙帶放進(jìn)讀卡器讀出來(lái)從而控制與非門來(lái)實(shí)現(xiàn)程序功能。
后來(lái)顯示器出現(xiàn),終于可以不再打孔,直接編程機(jī)器語(yǔ)言。那時(shí)候的程序就是一個(gè)個(gè)二進(jìn)制的矩陣,需要你線性代數(shù)學(xué)的非常遛。再后來(lái),有了匯編語(yǔ)言,終于可以直接控制處理器了,還記得用匯編控制寄存器,累加器等等的場(chǎng)景。于是匯編也成了最底層最初級(jí)的程序設(shè)計(jì)語(yǔ)言,主要面向底層硬件,也可以編寫(xiě)單片機(jī)。匯編的效率也是非常的低,于是出現(xiàn)了一系列真正的程序設(shè)計(jì)語(yǔ)言如FORTONPASCALdelphi之流。。。。具體發(fā)展歷程就不介紹了,幾乎每本講程序設(shè)計(jì)的書(shū)都會(huì)提到。這些語(yǔ)言中,C語(yǔ)言靠簡(jiǎn)潔的語(yǔ)言結(jié)構(gòu)和高效的執(zhí)行效率脫穎而出。C語(yǔ)言的應(yīng)用場(chǎng)景非常廣泛,由于可以調(diào)用內(nèi)存,C語(yǔ)言也可以面向底層硬件,keilC也可以寫(xiě)單片機(jī),比匯編高效很多,但占用存儲(chǔ)空間也相對(duì)更多。
嚴(yán)格來(lái)講,從硬件到操作系統(tǒng)之間的中間層,如接口程序,驅(qū)動(dòng)程序,。。。大多用C語(yǔ)言實(shí)現(xiàn)。然后C語(yǔ)言的結(jié)構(gòu)化編程也讓程序結(jié)構(gòu)變得更加清晰易讀,所以C語(yǔ)言也可以用來(lái)很高效的編寫(xiě)應(yīng)用程序??梢哉f(shuō)從底層到表層,C語(yǔ)言都可以很好的實(shí)現(xiàn)。當(dāng)然C語(yǔ)言有他的弊病,結(jié)構(gòu)化編程的通用性非常差,有點(diǎn)類似于私人定制,所以在此基礎(chǔ)上,提出了面向?qū)ο蟮母拍睿l(fā)展出C++語(yǔ)言。引入了類和繼承。這一拓展,大大的豐富了C語(yǔ)言的編程環(huán)境生態(tài)。特別是微軟開(kāi)發(fā)的VS系列,發(fā)現(xiàn)至今已二十多年,經(jīng)久不衰。就是因?yàn)閃INDOWS編程的生態(tài)發(fā)展的非常好,記得當(dāng)年有本書(shū)叫《深入淺出mfc》專門介紹windows上可以應(yīng)用的公共類。mfc就是MicrosoftFoundationClasses的縮寫(xiě)。
c/c++雖然有相當(dāng)多的優(yōu)勢(shì),但由于還是偏底層,最大的問(wèn)題是所有的程序都需要編譯。特別是在網(wǎng)絡(luò)編程時(shí)代,非常影響發(fā)揮。
于是JAVA橫空出世,JAVA是邊解釋邊執(zhí)行的語(yǔ)言,不需要特定環(huán)境下的編譯器,因此編程環(huán)境相對(duì)簡(jiǎn)單。而且JAVA取消了指針,不用操心內(nèi)存控制,導(dǎo)致程序設(shè)計(jì)也更簡(jiǎn)單。當(dāng)然,相對(duì)C/C++,JAVA只能實(shí)現(xiàn)更加表層的功能。如各類b/s系統(tǒng),mis系統(tǒng)等等,是JAVA的典型應(yīng)用場(chǎng)景。
再往上,就是一度流行的各類網(wǎng)絡(luò)編程jsp,asp,php。。。。。以及如今的python,號(hào)稱編程生態(tài)第一流。基本把程序設(shè)計(jì)變成了程序搬運(yùn)。把程序員的工作變成了搬運(yùn)工,只要搭積木式的編程就可以實(shí)現(xiàn)各類應(yīng)用。
最后就是前端,各類腳本語(yǔ)言,界面美工,html。。。。不介紹了,沒(méi)啥意思,基本不算程序開(kāi)發(fā)了。
以上純屬個(gè)人淺見(jiàn),不當(dāng)之處請(qǐng)多理解。畢竟脫離專業(yè)十幾年了。