- 從零開始:Python快速入門教程
- 侯惠芳主編
- 849字
- 2021-08-17 17:27:53
1.3 程序設計邏輯

每位程序員都像一位藝術家,都會有不同的設計邏輯。不過由于計算機是很嚴謹的科技化工具,因此對一個程序員而言,還是必須遵循某些規范和對照程序中的邏輯概念,這樣才能讓程序代碼具備可讀性與可維護性。從早期的結構化設計,到現在將傳統程序的設計邏輯轉換成面向對象設計邏輯,都是在協助程序員找到編寫程序可依循的大方向。
1.3.1 結構化程序設計
當程序變大且程序代碼越來越多時,程序管理與除錯也變得越來越麻煩,于是就出現了結構化程序語言。這種程序的構想是將一個大程序切割成若干個較小、較容易管理的小程序模塊,這些小程序模塊稱為函數,其中功能相近的函數被放在同一函數庫中。當需要使用某個函數時,由主程序調用函數庫中的函數。如果主程序要計算長方形以及圓形的面積與周長,就可以將程序分割成4個函數來處理,如圖1.6所示。

圖1.6
對于一個結構化程序,不管其結構如何復雜,通常皆可利用表1.3所示的基本控制流程來表達。
表1.3 基本控制流程


1.3.2 面向對象程序設計
面向對象程序設計(Object Oriented Programming,OOP)是指將存在于日常生活中的常見對象(Object)的概念應用在軟件設計的開發模式中。也就是說,面向對象程序設計讓人們從事程序設計時,能以一種更生活化、可讀性更高的設計觀念來進行,并且所開發出來的程序也較容易擴充、修改及維護。
面向對象程序設計模式必須具備3種特性:封裝、繼承與多態。簡單來說,封裝是利用類別來實現抽象數據類型(Abstract Data Type,ADT);而繼承則類似現實生活中的遺傳,允許我們去定義一個新的類別來繼承既存的類(Class),進而使用或修改繼承而來的方法(Method),并可在子類中加入新的數據成員與函數成員;至于多態,最直接的定義就是讓具有繼承關系的不同類對象可以調用相同名稱的成員函數,并產生不同的反應結果。例如,要計算長方形及圓形的面積與周長,有兩種方法。第一種方法采用封裝,封裝兩個類,當主函數要計算長方形的面積,就根據長方形類產生對象,要計算圓形的面積,就根據圓形類產生對象,如圖1.7-a所示。第二種方法再加上繼承與虛函數特性,可以設計出具有多態性的代碼,如圖1.7-b所示。

圖1.7-a

圖1.7-b
- Mastering Ext JS(Second Edition)
- 國際大學生程序設計競賽中山大學內部選拔真題解(二)
- 垃圾回收的算法與實現
- JavaScript:Functional Programming for JavaScript Developers
- Access 數據庫應用教程
- Instant 960 Grid System
- Java程序設計與實踐教程(第2版)
- Python Data Analysis(Second Edition)
- 信息技術應用基礎
- 小程序開發原理與實戰
- Gradle for Android
- Getting Started with LLVM Core Libraries
- 軟件項目管理實用教程
- Developing SSRS Reports for Dynamics AX
- Python編程:從入門到實踐(第3版)