複製鏈接
請複製以下鏈接發送給好友

面向問題

鎖定
面向問題是一種全新的編程思想,建立在面向過程之上,可以簡單的理解成高度集成的面向過程。
中文名
面向問題
簡    介
建立在面向過程之上
定    義
一種全新的編程思想
作    用
可以簡單的理解成高度集成

面向問題基本信息

什麼是問題呢?需要解決的事情就是問題。一個問題可以由幾個較小的問題組成,一個較小的問題也可以由更小的問題組成,直到那個小問題可以一步解決。
傳統的面向過程編程要完成一項功能(大的問題)需要大量的代碼,但是許多代碼並不是直接和這項功能有關,而是用於完成細微的工作 (較小的問題)。以面向過程語言(如:C語言)編寫“郵件發送程序”為例子,編程者需要檢查網絡情況、連接服務器;又要編寫界面,處理 用户動作,因此需要大量的代碼。而用面向問題語言(如:Angela語言),只要用到一個“黑箱”:SENDEM,以及相關的參數(發件人賬户用户名、發件人賬户密碼、收件人賬户用户名、郵件標題、郵件正文、郵件附件),用三行代碼就可以了:
Program SENDEMTEST
SENDEM:[發件人賬户用户名],[發件人賬户密碼],[收件人賬户用户名],[郵件標題],[郵件正文],[郵件附件]
END

面向問題其他信息

再舉一個例子,比如説載入文本文件。在所有的語言中,VB代碼是最簡單的,但也要三行(程序頭尾不計),而且用到了三個函數(StrConv、InputB、LOF)和一種語句(OPEN FOR BINRAY):
Open FILENAME For Binary As #1
TEXT = StrConv(InputB(LOF(1), 1), vbUnicode)
Close #1
而用面向問題語言(如:Angela語言),只要一行,至於中間過程,全部都由Angela包辦了。
GETFILE:TEXT,FILENAME,'0'
因此説,面向問題編程是一種具有極高效率的編程方式,但是也有缺點,就是無法進行細微操作和執行速度較慢。對於第一種缺陷,可以用內嵌另一種語言進行解決(Angela語言已經內嵌VBS,並準備內嵌C和ASM);但是對於第二種缺陷,尚未有良策解決。魚與熊掌不可兼得,是否採用這種全新的編程方式,要具體情況具體分析。