天天看點

python程式設計範式

微信公衆号搜尋【程式媛小莊】,關注半路出家的程式媛如何靠python開發養家糊口~

前言

很多計算機小白在了解程式設計語言的基本文法和使用之後,面對一個需求時會覺得無從下手,沒有思路,本文介紹程式設計範式就是為了解決小白們的沒有思路的問題。

什麼是程式設計範式

官方來說,程式設計範式是某種程式設計語言的程式設計風格或者說是程式設計方式。

通俗的說,程式設計範式就是寫代碼的套路,如果把程式設計的過程比喻為做飯,那程式設計範式指的就是各大菜系 - 魯、川、粵、蘇、閩、浙、湘、徽等,而在Python程式設計中常見的流派有面向過程和面向對象。

需要強調的是,每個菜系都有自己的特點,并沒有高低之分,隻有做飯的廚師手藝好不好,在程式設計中也是一樣的,每種程式設計範式在不同的場景下都有優劣,并不能分誰好誰壞。

程式設計範式的種類

面向過程

面向過程的程式設計思想,核心就是過程二字。過程指的就是做事的步驟,先做什麼,在做什麼,比如做飯一樣,要先洗米,然後放入電飯鍋,最後按下煮飯。基于面向過程的程式設計思想就像在設計一條流水線,任何程式的執行都是按照順序執行的,是以無論采用什麼語言、采用什麼程式設計範式,最終的執行都是按照過程的。

收到一個需求之後,先不要着急寫代碼,可以按照面向過程的思想将需求分解成很多個小步驟去實作然後依次調用即可,比如說,炒一盤番茄炒蛋,可以分為切番茄、打雞蛋、炒菜三部分。

基于所學的知識,可以使用函數實作每個步驟:

# 第一步,将每個小步驟封裝成不同的函數
def cut_tomato():
    print('切番茄...')

def eggs():
    print('打雞蛋...')
    
def make():
    print('炒菜')

# 第二步,根據步驟依次調用
cut_tomato()  # 首先切番茄
eggs()  # 然後打雞蛋
make()  # 最後炒菜
           

基于面向過程的程式設計思想既有優點也有缺點。

優點:可以将複雜的問題分解為簡單的步驟,進行流程化。

缺點:程式的可擴充性差,因為一套步驟隻能用來解決一個問題,比如上述做番茄炒蛋的步驟無法做火鍋,就算可以做,也要改掉很多代碼,就很有可能出現連鎖反應,一處改處處錯。

是以面向過程的思想一般用于那些實作功能後基本不改代碼的場景,比如說寫一個實作某種功能的腳本,用面向過程實作是非常合适的。如果需要處理的任務非常複雜,并且需要不斷地疊代更新和維護,建議使用下述面向對象的程式設計思想。

面向對象

在Python中一切皆對象,關于面向對象的程式設計思想會在面向對象部分進行非常詳細的介紹,這裡先簡單介紹一下:

面向對象的程式設計思想核心是對象,可以将對象了解為對資料和函數功能的整合,每種對象都有自己的資料和功能。在面向對象中會為大家詳細的介紹python中的類和對象。

還請大家耐心等待,小莊會急速更細滴~