• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            road420

            導航

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            統計

            常用鏈接

            留言簿(2)

            隨筆檔案

            文章檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            五種程序設計方法

            五種程序設計方法

            1.        結構化程序設計

            為了提高程序的可讀性、可重用性等,逐漸出現了將程序開發中經常用到的相同的功能,比如數學函數運算、字符串操作等,獨立出來編寫成函數,然后按照相互關系或應用領域匯集在相同的文件里,這些文件構成了函數庫

            函數庫是一種對信息的封裝,將常用的函數封裝起來,人們不必知道如何實現它們。只需要了解如何調用它們即可。函數庫可以被多個應用程序共享,在具體編程環境中,一般都有一個頭文件相伴,在這個頭文件中以標準的方式定義了庫中每個函數的接口,根據這些接口形式可以在程序中的任何地方調用所需的函數。

            由于函數、庫、模塊等一系列概念和技術的出現,程序設計逐漸變成如圖所示的風格。程序被分解成一個個函數模塊,其中既有系統函數,也有用戶定義的函數。通過對函數的調用,程序的運行逐步被展開。閱讀程序時,由于每一塊的功能相對獨立,因此對程序結構的理解相對容易,在一定程度上緩解了程序代碼可讀性和可重用件的矛盾,但并未徹底解決矛盾。隨著計算機程序的規模越來越大,這個問題變得更加尖銳,于是出現了另一種編程風格——結構化程序設計

            在結構化程序設計中,任何程序段的編寫都基于3種結構:分支結構、循環結構和順序結構。程序具有明顯的模塊化特征,每個程序模塊具有惟一的出口和入口語句。結構化程序的結構簡單清晰,模塊化強,描述方式貼近人們習慣的推理式思維方式。因此可讀性強,在軟件重用性、軟件維護等方面都有所進步,在大型軟件開發尤其是大型科學與工程運算軟件的開發中發揮了重要作用。因此到目前為止,仍有許多應用程序的開發采用結構化程序設計技術和方法。即使在目前流行的面向對象軟件開發中也不能完全脫離結構化程序設計。

             

            2.        面向對象程序設計

            面向對象的程序役計方法是程序設計的一種新方法。所有面向對象的程序設計語言一般都含有三個方面的語法機制,即對象和類、多態性、繼承性。

            1.對象和類

            對象的概念、原理和方法是面向對象的理序設計語言暈重要的特征。對象是用戶定義的類型(稱為類)的變量。一個對象是既包含數據又包合操作該數據的代碼(函數)的邏輯實體。對象中的這些數據和函數稱為對象的成員,即成員數據和成員函數。對象中的成員分為公有的和私有的。公有成員是對象與外界的接口界面。外界只能通過調用訪問一個對象的公有成員來實現該對象的功能。私有成員體現一個對象的組織形式和功能的實現細節。外界無法對私有成員進行操作。類對象按照規范進行操作,將描述客觀事物的數據表達及對數據的操作處理封裝在一起,成功地實現了面向對象的程序設計。當用戶定義了一個類類型后,就可以在該類型的名下定義變量(即對象)了。類是結構體類型的擴充。結構體中引入成員函數并規定了其訪問和繼承原則后便成了類。

            2.多態性

            面向對象的程序設計語言支持多態性,把一個接口用于一類活動。即一個接口多種算法。具體實施時該選擇哪一個算法是由特定的語法機制確定的。C++編譯時和運行時都支持多態性。編譯時的多態性體現在重載函數和重載運算符等方面。運行時的多態性體現在繼承關系及虛函數等方面。

            3.繼承性

            C++程序中,由一個類(稱為基類)可以派生出新類(稱為派生類)。這種派生的語法機制使得新類的出現輕松自然,使得一個復雜事物可以被順理成章地歸結為由逐層派生的對象描述。派生使得程序中定義的類呈層次結構。處于子層的對參既具有其父層對象的共性.又具有自身的特性。繼承性是一個類對象獲得其基類對象特性的過程。C++中嚴格地規定了派生類對其基類的繼承原則和訪問權限,使得程序中對數據和函數的訪間,需在家族和朋友間嚴格區分。

             

            3.        事件驅動的程序設計

            事件驅動的程序設計實際上是面向對象程序設計的一個應用,但它目前僅適用于windows系列操作系統windows環境中的應用程序與MSDOS環境中的應用程序運行機制不同、設計程序的方式也不一樣。windows程序采用事件驅動機制運行,這種事件驅動程序由事件的發生與否來控制,系統中每個對象狀態副改變都是事件發生的原由或結果,設計程序時需以一種非順序方式處理事件,與順序的、過程驅動的傳統程序設計方法迥異

            事件也稱消息,含義比較廣泛,常見的事件有鼠標事件(如民標移動、單擊、掠過窗口邊界)、鍵盤事件(如按鍵的壓下與拾起)等多種。應用程序運行經過一系列必要的初始化后,將進入等待狀態,等待有事件發生,一旦事件出現,程序就被激活并進行相應處理。

            事件驅動程序設計是圍繞著消息的產生與處理進行的.消息可來自程序中的某個對象,也可由用戶、wlndow s或運行著的其他應用程序產生。每當事件發生時,Windows俘獲有關事件,然后將消息分別轉發到相關應用程序中的有關對象,需要對消息作出反應的對象應該提供消息處理函數,通過這個消息處理函數實現對象的一種功能或行為。所以編寫事件驅動程序的大部分工作是為各個對象()添加各種消息的處理函數。由于一個對象可以是消息的接收者,同時也可能是消息的發送者,所發送的消息與接收到的消息也可以是相同的消息,而有些消息的發出時間是無法預知的(比如關于鍵盤的消息),因此應用程序的執行順序是無法預知的。

            4.        邏輯式對象程序設計

            邏輯式程序設計的概念來自邏輯式程序設計語言Prolog這一曾經在計算機領域引起震動的日本第五代計算機的基本系統語言,在這種第五代計算機中,Prolog的地位相當于當前計算機中的機器語言。

            Prolog主要應用在人工智能領域,在自然語言處理、數據庫查詢、算法描述等方面都有應用,尤其適于作為專家系統的開發工具。

            Prolog是一種陳述式語言,它不是一種嚴格的通用程序設計語言,使用Prolog編寫程序不需要描述具體的解題過程、只需結出一些必要的事實和規則,這些規則是解決問題方法的規范說明,根據這些規則和事實.計算機利用渭詞邏輯,通過演繹推理得到求解問題的執行序列。

            5.        并行程序設計

            一個有實際應用的并行算法,最終總要在并行機上實現,為此首先就要將并行算法轉化為并行程序,此過程就是所謂的并行程序設計(Parallel Program)。它要求算法設計者、系統結構師和軟件工作者廣泛頻繁的交互。因為設計并行程序涉及到的知識面較廣,主要包括操作系統中的有關知識和優化編譯方面的知識。操作系統內容非常豐富,并行程序中最基本的計算要素如任務、進程、線程等基本概念、同步機制和通信操作等。

            目前并行程序設計的狀況是:并行軟件的發展落后于并行硬件;和串行系統與應用軟件相比,現今的并行系統與應用軟件甚少且不成熟;并行軟件的缺乏是發展并行計算的主要障礙;不幸的是,這種狀態似乎仍在繼續著。究其原因是并行程序設計遠比串行程序設計復雜:并行程序設計不但包含了串行程序設計,面且還包含了更多的富有挑戰性的問題;串行程序設計僅有一個普遍被接受的馮·諾依曼計算模型,而并行計算模型雖有好多,但沒有一個可被共同認可的像馮·諾依曼那樣的優秀模型;并行程序設計對環境工具(如編譯、查錯等)的要求遠比串行程序設計先進得多;串行程序設計比較適合于自然習慣,且人們在過去積累了大量的編程知識、經驗和寶貴的軟件財富。

            posted on 2010-09-16 14:45 深邃者 閱讀(283) 評論(0)  編輯 收藏 引用

            无码任你躁久久久久久老妇| 国产精品久久久久9999高清| 国内精品久久久久影院日本| 香港aa三级久久三级老师2021国产三级精品三级在 | 精品久久久久一区二区三区| 777米奇久久最新地址| 精品久久久久久中文字幕人妻最新| 久久这里只有精品首页| 久久AV高潮AV无码AV| 亚洲国产精品无码久久久秋霞2 | 精品一久久香蕉国产线看播放| 九九99精品久久久久久| 亚洲精品高清久久| 久久天天日天天操综合伊人av| 久久久久一本毛久久久| 久久乐国产综合亚洲精品| 久久成人小视频| 久久久久久夜精品精品免费啦| 欧美噜噜久久久XXX| 久久亚洲国产午夜精品理论片| 久久激情亚洲精品无码?V| 久久天天躁狠狠躁夜夜躁2014| 亚洲成色WWW久久网站| 久久精品国产亚洲沈樵| 久久久久一级精品亚洲国产成人综合AV区| 亚洲Av无码国产情品久久| 国内精品伊人久久久久777| 狠狠色丁香婷综合久久| 久久婷婷五月综合成人D啪| 亚洲va中文字幕无码久久| 99久久夜色精品国产网站| 久久久精品人妻一区二区三区蜜桃| 久久ZYZ资源站无码中文动漫| 国产精品久久久久久久午夜片| 久久久久亚洲AV无码观看| 精品久久久久久无码人妻蜜桃 | 久久精品国产亚洲av水果派 | 国内精品九九久久久精品| 久久久99精品成人片中文字幕| 久久香蕉国产线看观看精品yw| 国产精品丝袜久久久久久不卡|