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

程序設計範型

鎖定
程序設計範型( Programming paradigm)是指人們在程序設計時採用的基本方式模型或程序設計體裁,即用程序設計語言表達各種概念和各種結構的一套設施。
一個程序設計範型一般是一類程序設計語言的基礎,是執行設施的基本集合,或者是關於計算機系統的思考方法。它體現一類語言的主要特點,用以支持應用領域所希望的設計風格。
面向對象範型的核心概念是對象和類。從程序本身看,它是一個在主程序之下的類的集合和各類之間由繼承關係聯繫起來的結構,在主程序中定義各對象,規定它們之間傳遞消息的規律。
從程序的執行看,它是各對象之間以消息傳遞的方式進行的通信。面向對象程序設計最主要的特徵是各對象之間的繼承。 [1] 
中文名
程序設計範型
外文名
Programming paradigm
定    義
指人們在程序設計時採用的基本方式模型或程序設計體裁,即用程序設計語言表達各種概念和各種結構的一套設施

目錄

程序設計範型定義

面向對象編程、面向方面編程、函數式編程。是不是覺得很亂,其實這些只不過是"編程範型"中的一些特例而已,而不同的編程語言如C++、JAVA也並不是僅僅對某一種編程範型的支持,或許是支持某個或許是支持若干多個編程範型,但請牢記每一種編程的範型都是一種解決問題的方案,採用任何一個都可以在某個領域快速的解決問題!

程序設計範型釋義

一個編程範型是一類典型的編程風格(可以對照方法學,是一個從事軟件工程的一類典型的風格)。
一個編程範型提供了(同時決定了)一個程序員對程序執行的看法。例如,在面向對象編程中,程序員認為程序是一系列相互作用的對象,而在函數式編程中一個程序會被看作是一個無狀態的函數計算的序列。
正如軟件工程中不同的羣體會提倡不同的方法學一樣,不同的編程語言也會提倡不同的編程範型。一些語言是專門為某個特定的範型設計的(如Smalltalk和Java支持面向對象編程,而Haskell和Scheme則支持函數式編程),同時還有另一些語言支持多種範型(如Common Lisp、Python和Oz)
很多編程範型已經被熟知他們禁止使用哪些技術,同時允許使用哪些。
例如,純粹的函數式編程不允許有副作用;結構化編程不允許使用goto。可能是因為這個原因,新的範型常常被那些慣於較早的風格的人認為是教條主義或過分嚴格。然而,這樣避免某些技術反而更加證明了關於程序正確性——或僅僅是理解它的行為——的法則,而不用限制程序語言的一般性。
編程範型和編程語言之間的關係可能十分複雜,由於一個編程語言可以支持|多種範型。例如,C++設計時,支持過程化編程、基於對象編程、面向對象編程以及泛型編程。
然而,設計師和程序員們要考慮如何使用這些範型元素來構建一個程序。一個人可以用C++寫出一個完全過程化的程序,另一個人也可以用C++寫出一個純粹的面向對象程序,甚至還有人可以寫出雜揉了兩種範型的程序。

程序設計範型列子

結構化編程, 對比 非結構化編程
命令式編程, 對比 聲明式編程
消息傳遞編程, 對比 命令式編程
過程化編程, 對比 函數式編程
Value-level programming, compared to Function-level programming
流程驅動編程, 對比 事件驅動編程
純量編程, 對比 陣列編程
基於類編程,對比基於原型編程 (在面向對象編程的上下文中)
Rule-based programming, compared to Constraint programming (在邏輯編程的上下文中)
Component-oriented programming (as in OLE)
面向方面編程 (如 AspectJ)
符號式編程 (如 Mathematica)
面向表格編程 (如 Microsoft FoxPro)
管道編程 (如 Unix命令中的管道)
Post-object programming
面向主題編程
自省編程 或稱 反射編程。

程序設計範型參見

Ars based programming
Memetics
參考資料
  • 1.    蘇選良 .管理信息系統 :電子工業出版社 ,2003年