計算機語言面向?qū)ο箝_發(fā)的發(fā)展探討論文
隨著科學(xué)技術(shù)的快速發(fā)展,計算機也普遍應(yīng)用在人們的日常生活當(dāng)中。而計算機的正常運轉(zhuǎn)需要計算語言的支撐,因此計算機技術(shù)語言也隨著計算機技術(shù)的快速發(fā)展而發(fā)展,從最初的機器語言到現(xiàn)在的面向?qū)ο笳Z言,計算機語言在不斷的摸索中也日趨完善。最重要的一點是面向?qū)ο蠹夹g(shù)已經(jīng)成為當(dāng)今主流趨勢,無論是軟件開發(fā),還是軟件系統(tǒng)、交互式APP都有面向?qū)ο笳Z言的身影,所以面向?qū)ο蠹夹g(shù)的發(fā)展和創(chuàng)新對計算機技術(shù)的發(fā)展和革新有一定的影響。
1計算機語言發(fā)展的歷程
計算機語言發(fā)展的重要3個階段是機器語言、匯編語言、高級語言。機器語言是在1946年世界上第一臺計算機ENIAC誕生后,由專家發(fā)明的一種原始穿孔卡片的表現(xiàn)語言,這種語言也就只有專家才能理解。雖然隨著后來機器語言的簡化,勉強能讓人們所理解,但是最終進入計算機的還是這種機器語言。直到計算機語言發(fā)展到第二代:匯編語言,匯編語言是用助記符代替了操作碼,地址符代替地址碼,雖然較機器語言有了很大的進步,但是匯編語言仍是復(fù)雜、容易出錯不利于人們操作和理解。一直到第三代,計算機語言才進入了面向人類的時代,其中包括Basic語言、PASCAC等,但是計算機并不能識別高級語言編寫的源程序,源程序在進入計算機后,是通過翻譯程序翻譯成機器語言的目標(biāo)程序,進而計算機才會執(zhí)行。翻譯方式分為兩種,一種是編譯方式,另一種是解釋方式,編譯方式事先安排一個機器語言編譯程序,放入計算機內(nèi)容系統(tǒng),待源程序輸入之后,計算機便會執(zhí)行這個目標(biāo)程序。解釋方式是在源程序進入計算后,解釋程序邊掃描邊解釋,一句句來執(zhí)行。其中BASIC語言則以執(zhí)行解釋方式為主,PASCAL以編譯方式為主。
面向?qū)ο笳Z言是成形于20世紀(jì)70年代,并且面向?qū)ο笳Z言的發(fā)分為兩個方向:一種是純面向?qū)ο笳Z言,如Smalltalk,另一種是混合型面向?qū)ο笳Z言,如C++、Objective-C等。面向?qū)ο蠹夹g(shù)比較方便于軟件擴充和復(fù)用,具有封裝性、繼承性、多態(tài)性3個特點。封裝性是指將功能封裝成一個個獨立的單元,減小耦合,這種特點方便對程序的修改,間接減少維護成本。繼承性是指在基本層次關(guān)系的不同類中共享數(shù)據(jù)和操作,繼承是面向?qū)ο蠹夹g(shù)的特色。多態(tài)性是指對象具有惟一的靜態(tài)類型和多個可能的動態(tài)類型。這3個特點決定了面向?qū)ο缶哂芯S護簡單、可擴充、能夠代碼重用的優(yōu)點。由此可見,面向?qū)ο蠹夹g(shù)在計算機語言的發(fā)展中越來越成熟。
2計算機語言面向?qū)ο蟮拈_發(fā)
面向?qū)ο蠹夹g(shù)是一種以對象為基礎(chǔ),以數(shù)據(jù)為中心,將數(shù)據(jù)和數(shù)據(jù)操作作為整體進行事件或消息驅(qū)動對象執(zhí)行處理的程序設(shè)計。它是將整體抽象為類,采用抽象和信息隱蔽的技術(shù)。面向?qū)ο蟪绦蛴袆e于面向過程程序,面向?qū)ο蟪绦蛴深惖亩x和類的組成。而面向過程是將密切相關(guān)、相互依賴的數(shù)據(jù)和對數(shù)據(jù)的操作相互分離。所以面向?qū)ο蟪绦蛟O(shè)計更利于程序語言的編寫以及實現(xiàn)。
2.1面向?qū)ο箝_發(fā)的核心思想和概念
其核心思想包括很多個方面。如對象、類;對象指的是軟件系統(tǒng)模擬真實生活中的系統(tǒng)中的一種事物的抽象,在生活中常見的有銀行辦公系統(tǒng)、商場系統(tǒng)等。每個對象都是唯一的,而且每個對象具有自己的屬性、行為以及狀態(tài)。類就是包括很多個對象,是具有相同屬性和行為的對象的集合,每個對象都是類的具體實例,類中的對象雖然具有相同的屬性,但是卻具有不同的狀態(tài)。打個比方說,如果定義貓為一個類,那么白貓就是其中的一個對象,那么被定義使用貓的對象的屬性為白色,就是對象的狀態(tài)。
接口、消息以及封裝也是面向?qū)ο蟮暮诵乃枷。所謂接口就是系統(tǒng)對外提供的服務(wù)是一個抽象的概念,系統(tǒng)接口定義的是系統(tǒng)所能夠提供的服務(wù),但其中并不包括服務(wù)實現(xiàn)的細(xì)節(jié)。從使用者的角度來說,對象中所有公開方法的聲明構(gòu)成了對象接口,而消息就是參數(shù)。封裝是面向?qū)ο髽O為重要的一個特點,它是指隱藏對象的屬性和實現(xiàn)的細(xì)節(jié),僅僅對外公開接口,這樣做有利于使用者快捷方便地使用系統(tǒng),還能有效防止使用者出現(xiàn)錯誤修改的現(xiàn)象,更重要的是封裝能夠提高系統(tǒng)的可用性,在不同的環(huán)境中,系統(tǒng)都是獨立的整體。
多態(tài)、動態(tài)綁定也是面向?qū)ο蟮暮诵乃枷。多態(tài)是指系統(tǒng)A訪問系統(tǒng)B提供的服務(wù)的時候,系統(tǒng)B可以通過多種方式來提供服務(wù),而這一切對于系統(tǒng)A是透明的。動態(tài)綁定是指,一個接口=new實現(xiàn)類,這個實現(xiàn)類在運行的時候并不知道,可能是實現(xiàn)類A,也可能是實現(xiàn)類B,Java虛擬機的這種運行機制被稱為動態(tài)綁定。比如有一個父類super Cksi,它有2個子類sub Classl,subClass2。Super class有一個方法func(),兩個子類都重寫了這個方法。那么可以定義一個super class的引用obj,讓它指向一個子類的對象,比如super class obj =new subClass1();那么調(diào)用obj.func()方法時候,會進行動態(tài)綁定,也就是obj它的實際類型的func()方法,即subClass1的func()方法。同樣你寫super Class obj=new subClass2();obj.func()其實調(diào)用的是subClass2的func()方法。這種由于子類重寫父類方法,然后用父類引用指向子類對象,調(diào)用方法時候會進行動態(tài)綁定,這就是多態(tài)。如果程序員需要再添加一個sub-Class3子類,就只需要使用配置文件而不動源代碼就行了。
2.2面向?qū)ο箝_發(fā)的方法
在實際的工作中,很多軟件開發(fā)工程師都會遇到這樣的問題:在軟件開發(fā)過程和軟件投入使用后,要常常對軟件進行修改,而在原來的結(jié)構(gòu)語言使用階段,這些修改具有一定的難度。如果代碼編寫不考慮周全,很有可能導(dǎo)致舊問題還未解決,新問題就出現(xiàn)了,更重要的是代碼重用率過低使得程序員工作效率極差。所以人們在不斷的實踐中開發(fā)出了一種能夠提高軟件系統(tǒng)穩(wěn)定性和可修改性的新方法即面向?qū)ο蠓ā?/p>
根據(jù)程序員多年工作經(jīng)驗表明對于任何軟件系統(tǒng)而言其相應(yīng)問題論域中的成分是最穩(wěn)定的一部分,因而面向?qū)ο笫菑囊环N從結(jié)構(gòu)組織來模式客觀世界的方法。主要構(gòu)造法則有區(qū)分對象及其屬性、區(qū)分整體對象及其組成部分、不同對象類的形成以及區(qū)分。通俗地說,區(qū)分對象及其屬性就好比區(qū)分臺式機和筆記本;區(qū)分整體對象及其組成就如同區(qū)分區(qū)分臺式計算機組成(主機、顯示器等);區(qū)分不同對象類的形成就如同區(qū)分所有類型的計算機(大、中、小型計算機、服務(wù)器、工作站和普通微型計算機等)。
面向?qū)ο蠓椒ň哂?個要點:(1)對象之間要能夠互傳信息;(2)按照繼承性,把若干個對象類組成一個層次結(jié)構(gòu)的系統(tǒng);(3)應(yīng)該將所有對象分為對象類。每個對象類都有其具體的數(shù)據(jù)、方法。打個比方說熒光屏上不同位置顯示的半徑不同的幾個圓,雖然都是Circle類的對象,但是,各自都有自己專用的數(shù)據(jù),以便記錄各自的圓心位置、半徑等;
(4)軟件系統(tǒng)的基本組成元素是對象,復(fù)雜的軟件對象是由簡單的對象組合而成。面向?qū)ο蠓椒ǖ拈_發(fā)過程具體可分為4個階段。(1)系統(tǒng)調(diào)查和需求分析,這是要求在進行開發(fā)前應(yīng)該對市場進行實際的調(diào)研,包括用戶的需求方面和系統(tǒng)開發(fā)面臨的現(xiàn)實問題,從而開發(fā)出的軟件或者其他中既能滿足用戶需要也能節(jié)省資金等。(2)分析問題的性質(zhì)和求解問題。這個是面向?qū)ο蟮倪^程分析,其具體內(nèi)容就是在對象中找出其行為、狀態(tài)等屬性,打個比方說,如果要做一個銀行辦公系統(tǒng),首先就應(yīng)該明確銀行辦公系統(tǒng)的用途、實現(xiàn)方法以及工作客觀端和管理工作端的具體內(nèi)容。(3)整理問題,這個就是對分析調(diào)查的結(jié)果進行整合,最終確定下來。好比在進行銀行系統(tǒng)開發(fā)的所有調(diào)查活動之后,最終確定銀行辦公系統(tǒng)的架構(gòu)體系。(4)程序?qū)崿F(xiàn),這是指運用面向?qū)ο笳Z言開發(fā)出具體的應(yīng)用程序軟件。
2.3發(fā)展現(xiàn)狀
在當(dāng)今計算機技術(shù)的高速發(fā)展下,面向?qū)ο蠹夹g(shù)已經(jīng)廣泛應(yīng)用于現(xiàn)代軟件開發(fā)工作中,而且面向?qū)ο蠹夹g(shù)已經(jīng)發(fā)展到更加廣闊的領(lǐng)域之中,如交互系統(tǒng)、人工智能、應(yīng)用平臺等方面。而且一些大型軟件的開發(fā) 也才用面向?qū)ο蠹夹g(shù),這樣在在研發(fā)過程中,就可以將整個系統(tǒng)軟件分為多個小單位進行逐一實現(xiàn),而且這些單位之間既能保持獨立也能相互聯(lián)系。面向?qū)ο蠹夹g(shù)在生活中各個領(lǐng)域都有具體的應(yīng)用,如郵政業(yè)務(wù)管理系統(tǒng)、銀行管理系統(tǒng)等一些事物種類繁多、業(yè)務(wù)邏輯復(fù)雜、數(shù)據(jù)量較大的網(wǎng)站中。
3結(jié)語
在如今信息技術(shù)高速發(fā)展的經(jīng)濟時代,計算機技術(shù)已經(jīng)滲入到人們生活的各個領(lǐng)域當(dāng)中,計算技術(shù)的快速發(fā)展必然帶動計算機語言的革新,從舊式的機器語言演變到如今的面向?qū)ο笳Z言,其中面向?qū)ο笳Z言已經(jīng)成為計算機語言的重要部分。所以相信在經(jīng)濟高速發(fā)展的背景下面向?qū)ο蠹夹g(shù)能夠迅猛發(fā)展,為人們的生活帶來更多的技術(shù)革新。
【計算機語言面向?qū)ο箝_發(fā)的發(fā)展探討論文】相關(guān)文章:
簡談?wù)軐W(xué)與面向?qū)ο蟮年P(guān)系及軟件開發(fā)的發(fā)展方向03-29
通信技術(shù)的發(fā)展應(yīng)用探討論文03-16
高校動畫教育發(fā)展模式探討論文03-15
麻醉護士發(fā)展的探討03-27
關(guān)于計算機語言編譯技術(shù)的探究論文12-02
探討會計與經(jīng)濟發(fā)展的關(guān)系論文01-02
探討計算機應(yīng)用軟件的開發(fā)和維護方案論文02-12
低影響開發(fā)技術(shù)下小城鎮(zhèn)建設(shè)探討論文03-02
關(guān)于學(xué)校體育課程內(nèi)容資源開發(fā)探討論文03-13
- 相關(guān)推薦