freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

面向?qū)ο蟪绦蛟O(shè)計的基本概念(已修改)

2025-05-23 20:46 本頁面
 

【正文】 面向?qū)ο蟪绦蛟O(shè)計的基本概念 面向?qū)ο蟪绦蛟O(shè)計的基本概念 20210414 20: 01前言:面向?qū)ο蟪绦蛟O(shè)計 (ObjectOriented Programming,以下簡稱 OOP)是一種起源于六十年代的Simula 語言,發(fā)展已經(jīng)將近三十年的程序設(shè)計思想。其自身理論已經(jīng)十分完善,并被多種面向?qū)ο蟪绦蛟O(shè)計語言 (ObjectOriented Programming Language,以下簡稱 OOPL)實現(xiàn)。如果把 Unix 系統(tǒng)看成是國外在系統(tǒng)軟件方面的文化根基,那么 Smalltalk 語言無疑在 OOPL 領(lǐng)域和 Unix 持有相同地位。由于很多原 因,國內(nèi)大部分程序設(shè)計人員并沒有很深的 OOP 以及 OOPL 理論,很多人從一開始學(xué)習(xí)到工作很多年都只是接觸到 c/c++,java,vb,delphi 等靜態(tài)類型語言,而對純粹的 OOP思想以及作為 OOPL 根基的 Smalltalk 以及動態(tài)類型語言知之甚少,不知道其實世界上還有一些可以針對變量不綁定類型的編程語言。而這些對比卻是深刻理解 OO理論的重要部分,而國內(nèi)這方面的資料也為數(shù)不多。故把自己的一些 OO學(xué)習(xí)心得寫下來做為一個系列文章 (一共三篇,第一篇描敘 OOP 的一些基本但容易被誤解的理論,第二篇主要說明各種 OOPL 演化 和發(fā)展以及對于 OOP理論的支持,第三篇主要是說模式和組件在 OOP中的地位以及展望 OOP 的未來 ),由于文章描敘的只是自己對于 OOP/OOPL 的理解,錯誤以及淺薄之處在所難免,只是希望對大家能起到拋磚引玉的作用。 淺析 OO 的基石 從抽象說起 Booch 曾經(jīng)在他自己的 OO領(lǐng)域內(nèi)的名著 [Booch 94]中開篇就論敘到了復(fù)雜性是軟件開發(fā)過程中所故有的特質(zhì)。而人們處理復(fù)雜性的最根本武器就是抽象。廣義的抽象代表的是對復(fù)雜系統(tǒng)的簡化描敘或規(guī)格說明,為了突出系統(tǒng)的本質(zhì)屬性而故意忽略其中的非實質(zhì)性細(xì)節(jié)。 一個概念只有當(dāng)能被最 終用來實現(xiàn)的機制獨立的描敘,理解,分析時,才將這個概念限定為抽象的概念 。而 Booch 也給出了他心目中關(guān)于 OO領(lǐng)域內(nèi)的狹義抽象定義: 抽象表示一個對象與其他所有對象相區(qū)別的基本特征,因此提供了同觀察者角度有關(guān)的清晰定義的概念界限。 因此,根據(jù)不同觀察角度,我們可以針對 OOP 給出不同級別的抽象層次。通常,面對一個典型的面向?qū)ο蟪绦颍?[Budd 2021]將其分成五個抽象層,分別覆蓋了 OOP 中的分析,設(shè)計與編程的各個階段: 1,最高級別的抽象層上,程序被看成是由很多相互作用并且遵守契約的對象所組成的對象集合。對 象之間相互合作完成程序的計算任務(wù)。這個抽象級別上的典型代表就是設(shè)計模式思想 (Design Pattern)。 2,第二個抽象層就是一個對象集單元,也就是一群定義之間有相互聯(lián)系的對象,在程序設(shè)計語言級別來看 Java 中是 packages,C++中是 name space。這個抽象級別上的典型代表就是模塊化思想 (Modularity)。 3,第三個抽象層所代表的是典型的 OOP 模式:客戶 /服務(wù)器模型,這主要是用來抽象兩個對象之間的互交過程。在這個抽象級別上的典型代表就是對象之間的消息機制 (Message Passing)。 4,第四個抽象層就是針對一組相似對象定義一個類作為生成對象的模板,類定義了對象的對外使用接口以及繼承對象所需的內(nèi)部繼承接口,而這個抽象層次的典型代表就是接口編程 (Interface Programming)。 5,第五個抽象層就是實現(xiàn)一個類所需要的方法和成員變量的實現(xiàn)(Implementation)。在這里 OOP 最終和 POP(ProcedureOriented Programming)相融合。 當(dāng)然,我們可以根據(jù)各自的觀察角度劃分成更細(xì)的抽象層次比如說針對第五層抽象用到的 POP 理論,我們還可以進(jìn)一 步的劃分出控制抽象 (三種完全描敘圖靈機計算模型所需要的控制結(jié)構(gòu) )以及數(shù)據(jù)抽象 (ADTs)等等,并由此繼續(xù)下去(如果你的想象力足夠豐富的話: )。 什么是 OOP? OOP 的許多原始思想都來之于 Simula 語言,并在 Smalltalk 語言的完善和標(biāo)準(zhǔn)化過程中得到更多的擴展和對以前的思想的重新注解??梢哉f OO 思想和OOPL 幾乎是同步發(fā)展相互促進(jìn)的。與函數(shù)式程序設(shè)計 (functionalprogramming)和邏輯式程序設(shè)計 (logicprogramming)所代表的接近于機器的實際計算模型所不同的是, OOP幾 乎沒有引入精確的數(shù)學(xué)描敘,而是傾向于建
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1