范崇華
摘 要: 計(jì)算機(jī)編程技術(shù)是通過運(yùn)用計(jì)算機(jī)來實(shí)現(xiàn)某一個(gè)目的,或者是解決問題,并通過某一種編程語言完成程序代碼的編寫,從而獲得最終結(jié)果的過程。由此可知,計(jì)算機(jī)編程技術(shù)對軟件活動(dòng)有著非常重要的影響。通常來講,計(jì)算機(jī)編程技術(shù)是將某一種編程語言作為基礎(chǔ)而設(shè)計(jì)出語言程序的,其過程中包含了分析、設(shè)計(jì)、編碼、測試以及排錯(cuò)等多個(gè)行為。本文結(jié)合編程語言來分析計(jì)算機(jī)編程技術(shù)的演變過程與發(fā)展趨勢。
關(guān)鍵詞: 計(jì)算機(jī)編程技術(shù);演變過程;發(fā)展趨勢
一、引言
隨著計(jì)算機(jī)技術(shù)的廣泛應(yīng)用,計(jì)算機(jī)成為每個(gè)人的常用設(shè)備,計(jì)算機(jī)的功能可以讓用戶在網(wǎng)絡(luò)上瀏覽網(wǎng)頁、打游戲消磨時(shí)間,也可以讓企業(yè)通過計(jì)算機(jī)來管理相關(guān)業(yè)務(wù),以及整理并儲(chǔ)存公司員工的基本資料。但是,當(dāng)計(jì)算機(jī)沒有程序的時(shí)候,這一設(shè)備就是一塊鐵,并不會(huì)對用戶作出的指令產(chǎn)生任何反應(yīng),由此可知,程序?qū)τ谟?jì)算機(jī)應(yīng)用的重要性,程序是用戶與計(jì)算機(jī)進(jìn)行溝通的橋梁。而計(jì)算機(jī)編程技術(shù)是指為了能夠運(yùn)用計(jì)算機(jī)來達(dá)到目的或者是解決問題,就要通過編寫程序語言來得到最終結(jié)果的過程。
程序語言是為了描述程序過程中而產(chǎn)生的記號(hào),這一記號(hào)可以描述語法語義。結(jié)合計(jì)算機(jī)的發(fā)展歷史而言,程序語言也經(jīng)歷多個(gè)發(fā)展階段,且其發(fā)展已經(jīng)超過了語言的本身意義,更多體現(xiàn)出交互式編程技術(shù)的演變。為了進(jìn)一步認(rèn)識(shí)到計(jì)算機(jī)編程技術(shù)的演變過程中與發(fā)展趨勢,本文結(jié)合程序語言的發(fā)展展開闡述。
二、程序語言的三個(gè)發(fā)展時(shí)期
(一)語言早期
實(shí)際上,最早的計(jì)算機(jī)是我國古代人民常用來計(jì)算賬務(wù)的算盤,且目前依然在使用。17世紀(jì),由Pascal等人創(chuàng)造了通過傳動(dòng)齒的運(yùn)行來實(shí)現(xiàn)計(jì)算的累加與進(jìn)位的計(jì)算機(jī)。
在上個(gè)世紀(jì)初期,英國著名數(shù)學(xué)家設(shè)計(jì)出兩個(gè)差分機(jī)與分析機(jī),其中分析機(jī)的運(yùn)行原理與我們現(xiàn)在使用的計(jì)算機(jī)比較相抵,分析機(jī)是通過輸入讀進(jìn)穿孔卡片來分析并給出輸入數(shù)的計(jì)算結(jié)果,且分析機(jī)能夠隨意的重復(fù)計(jì)算序列。在之后,Ada基于此設(shè)計(jì)出的運(yùn)算序列能夠完成更多的指令,并解決問題,這些運(yùn)算序列以設(shè)計(jì)者的名字進(jìn)行命名,ADA程序語言到現(xiàn)在也依然被使用。此外,英國著名數(shù)學(xué)家Turing又一次提出了"圖靈機(jī)"的設(shè)計(jì)理念,圖靈機(jī)的組成包含控制帶、儲(chǔ)存帶以及讀寫頭等,并通過其組成可以完成左右移動(dòng),或者是在儲(chǔ)存帶中完成輸入、刪除等符號(hào),又或者是完成條件性轉(zhuǎn)移指令等多項(xiàng)功能的機(jī)器。之后,Church設(shè)計(jì)出將邏輯共識(shí)作為約束變量的運(yùn)算方式,在語法語義上與程序語言非常相似,在程序理論與編程技術(shù)的實(shí)踐中被廣泛應(yīng)用。
(二)低級(jí)語言時(shí)期
首先是機(jī)器語言,它是第一代程序語言,是由二進(jìn)制機(jī)器代碼組成的編碼序列,可以讓計(jì)算機(jī)按照指令完成相應(yīng)的操作。機(jī)器語言的基本特點(diǎn)是可以充分體現(xiàn)計(jì)算機(jī)中包含的硬件結(jié)構(gòu),機(jī)器語言的編程不需要其他處理就能夠輸入執(zhí)行指令。但是,因?yàn)闄C(jī)器語言是直接面對機(jī)器,各個(gè)機(jī)器的指令系統(tǒng)都是各不相同的。因此,在一臺(tái)機(jī)器中的編程是不能照搬到另一臺(tái)機(jī)器上的。
其次是匯編語言,它是第二代程序語言,由上述可知,機(jī)器語言不具備直觀性,而且和用戶的數(shù)字表達(dá)的使用習(xí)慣與自然語言之間有比較大的距離,因此,機(jī)器語言在學(xué)習(xí)和記憶上存在一定的難度,同時(shí)也讓計(jì)算機(jī)的推廣與應(yīng)用存在了局限性?;谶@一情況,匯編語言是通過使用助記符號(hào)來完成計(jì)算機(jī)的相關(guān)操作,通過地址符號(hào)來替代計(jì)算機(jī)指令。及其無法對匯編語言程序進(jìn)行直接的識(shí)別,要使用匯編語言編譯設(shè)備將程序轉(zhuǎn)變成指令才能夠完成操作。同時(shí),因?yàn)閰R編語言與計(jì)算機(jī)指令是一對一的,盡管是非常簡單的計(jì)算機(jī)程序也要具備上百條的計(jì)算機(jī)指令,因此,在其基礎(chǔ)上,程序員設(shè)計(jì)出只要具有一條指令就可以編譯成多個(gè)計(jì)算機(jī)指令的程序語言,就是宏匯編語言。
(三)高級(jí)語言時(shí)期
首個(gè)可以脫離計(jì)算機(jī)硬件的高級(jí)語言的出現(xiàn)是在1954年,在多個(gè)平臺(tái)上被編譯成多個(gè)機(jī)器語言,在極大程度上消除了程序語言對于計(jì)算機(jī)與計(jì)算機(jī)系統(tǒng)的依賴性。在1970年,Pascal程序語言的出現(xiàn)標(biāo)志了結(jié)構(gòu)化編程時(shí)期的到來,這一程序語言具有非常嚴(yán)謹(jǐn)?shù)某绦蚪Y(jié)構(gòu)形式、完善的數(shù)據(jù)類型,且與其他程序語言相比,Pascal程序語言的運(yùn)行速度更快、排錯(cuò)效率更高。同時(shí),該程序語言是一種自編譯的程序語言。在80實(shí)際初期,編程理念出現(xiàn)了巨大的變革,在這一時(shí)期中設(shè)計(jì)出的程序原因大部分都具有較強(qiáng)的針對性與依賴性,而在高級(jí)語言時(shí)期,高級(jí)程序語言的基本目標(biāo)是針對程序而進(jìn)行編程的,更偏向于對程序要"做什么"進(jìn)行描述。
通過語言初期、低級(jí)語言時(shí)期以及高級(jí)語言時(shí)期的發(fā)展闡述來看,程序語言的發(fā)展實(shí)際上就是一個(gè)不斷創(chuàng)新與演變的挖掘過程,從機(jī)器語言發(fā)展到匯編語言,然后到高級(jí)語言與面向編程技術(shù)的程序語言,之后會(huì)面對具體應(yīng)用而設(shè)計(jì)的程序原因,其根本的發(fā)展動(dòng)力就是源于逐漸提升的抽象化要求,以及編程理念的創(chuàng)新與支持,簡單來講,就是講計(jì)算機(jī)可以讀進(jìn)的語言逐漸提升到模擬指令、模擬思考的程序發(fā)展過程。
三、計(jì)算機(jī)編程技術(shù)的發(fā)展
(一)傳統(tǒng)編程技術(shù)
傳統(tǒng)編程技術(shù)是將DOS操作系統(tǒng)中的計(jì)算機(jī)編程技術(shù)作為基礎(chǔ),在通過傳統(tǒng)編程技術(shù)來編寫特定計(jì)算機(jī)功能的相應(yīng)程序的過程中一定要對程序的運(yùn)算方式進(jìn)行設(shè)計(jì),分析數(shù)據(jù)的具體流程。不僅如此,傳統(tǒng)編程技術(shù)的運(yùn)算方式具有一定多變性,相同的問題有多種算法,比如是最優(yōu)算法或者是一般算法等,其數(shù)據(jù)流程非常復(fù)雜,而且數(shù)據(jù)的調(diào)控與方向都是交叉的,因此,傳統(tǒng)編程技術(shù)常常要面對操作平臺(tái)與計(jì)算機(jī)編譯系統(tǒng)等,基本上無法實(shí)現(xiàn)移植。
(二)可視化編程技術(shù)
這一編程技術(shù)是運(yùn)用調(diào)用計(jì)算機(jī)控件,并給控制對象設(shè)置一定的屬性,結(jié)合開發(fā)者的實(shí)際需求,在窗口直接進(jìn)行布局設(shè)計(jì)。可視化編程技術(shù)的優(yōu)勢就在于簡便,能夠自動(dòng)的生成計(jì)算機(jī)程度代碼,運(yùn)行效率更高,在現(xiàn)如今的應(yīng)用程度也比較高。
(三)面向?qū)ο蟮挠?jì)算機(jī)編程技術(shù)
為了能夠?qū)崿F(xiàn)計(jì)算機(jī)的整體性運(yùn)算的編程目標(biāo),讓每個(gè)對象都可以及時(shí)接收到指令信息、及時(shí)處理數(shù)據(jù),同時(shí)給其他對象發(fā)送指令信息的面對多個(gè)對象的計(jì)算機(jī)編程技術(shù)具備一定的靈活性、拓展性以及重用性。通過面向?qū)ο蟮木幊碳夹g(shù)來完成的程序,其組成是由一個(gè)可以產(chǎn)生子程序作用對象。面向?qū)ο缶幊碳夹g(shù)是將對象編程理念應(yīng)用在計(jì)算機(jī)軟件的開發(fā)與設(shè)計(jì)過程中,對開發(fā)活動(dòng)提供具體指導(dǎo)的編程技術(shù),換言之就是將"對象"的編程概念作為基礎(chǔ)而生成的編程技術(shù)。面向?qū)ο缶幊碳夹g(shù)中的對象是指由計(jì)算機(jī)數(shù)據(jù)和指令互相組成的載體,和客觀實(shí)體之間存在直接的相對關(guān)系。
結(jié)合計(jì)算機(jī)編程技術(shù)的演變,從傳統(tǒng)編程技術(shù)演變成可視化編程技術(shù),再到面向?qū)ο笞兂杉夹g(shù),可以認(rèn)識(shí)到在編程技術(shù)的實(shí)踐過程中,編程技術(shù)具有一定的獨(dú)立性,但是相互之間也存在一定的聯(lián)系,現(xiàn)階段,面向?qū)ο缶幊碳夹g(shù)的應(yīng)用范圍更為廣泛。但是,計(jì)算機(jī)編程技術(shù)的發(fā)展依然在繼續(xù),更簡潔、更高效、更智能的編程技術(shù)更為大家所期待。
四、結(jié)論
通過嚴(yán)謹(jǐn)?shù)乃季S模式來認(rèn)識(shí)新的事物,才能夠清楚其的整體發(fā)展過程,而計(jì)算機(jī)編程技術(shù)的發(fā)展同樣如此。計(jì)算機(jī)編程技術(shù)的發(fā)展按照一般的科技發(fā)展規(guī)律,到如今,編程技術(shù)的相關(guān)研究獲得了大量成果,究其原因是由于計(jì)算機(jī)編程技術(shù)的逐漸完善,模塊程序化的逐步創(chuàng)新,且推廣與應(yīng)用范圍的拓展。計(jì)算機(jī)編程技術(shù)的研究可以幫助我們?nèi)娴卣J(rèn)識(shí)到程序語言與編程技術(shù)的發(fā)展?!?/p>
參考文獻(xiàn)
[1]劉曉崢.淺析面向過程與面向?qū)ο缶幊趟枷胫愅琜J].科技信息,2011(3):501-502.
[2]史永哲.計(jì)算機(jī)編程思想分析[J].陜西師范大學(xué)學(xué)報(bào):自然科學(xué)版,2008(6).
[3]劉義. 淺談面向?qū)ο蟪绦蛟O(shè)計(jì)[J].今日科苑,2008(6).