面象過程與面象對象
阿新 • • 發佈:2018-06-01
passwd 核心 不能 strip pro 所有 utf nco 內部
面象過程
面向過程又被稱為top-down languages,核心在於過程二字,過程指的是解決問題的步驟,設計一條流水線機械式的思維方式
面象對象的優缺點
- 優點:可以使復雜的問題流程化,進而簡單化
- 缺點:可擴展性差
- 應用場景:監控系統
例子:
import json import re def interactive(): user = input(‘>>:‘).strip() passwd = input(‘>>:‘).strip() email = input(‘>>‘).strip() return { ‘name‘:user, ‘passwd‘:passwd, ‘email‘:email } def check(user_info): is_valid = True if len(user_info[‘name‘]) == 0: print(‘賬戶不能為空‘) is_valid = False if len(user_info[‘passwd‘]) < 6: print(‘密碼不能少於6位‘) is_valid = False if not re.search(‘@.*?.com$‘,user_info[‘email‘]): print(‘郵箱不合法‘) is_valid = False return { ‘is_valid‘:is_valid, ‘user_info‘:user_info } def register(check_info): if check_info[‘is_valid‘]: with open(‘account.json‘,‘w‘,encoding=‘utf-8‘) as f: json.dump(check_info[‘user_info‘],f) def main(): user_info = interactive() check_info = check(user_info) register(check_info) if __name__ == ‘__main__‘: main()
面象對象
OOP(Object Oriented Programing)編程,核心在於對象二字,對象是特征與技能的結合體
面象對象的優缺點
- 優點:可擴展性高
- 缺點:編程復雜程度高
- 應用場景:用戶需求經常變化,互聯網應用,遊戲 ,企業內部應用
面象對象的名詞解釋
- 類:一個類即是對一類擁有相同屬性的對象的抽象、藍圖、原型、模板。在類中定義了這些對象的都具備的屬性(variables(data))、共同的方法
屬性:人類包含很多特征,把這些特征用程序來描述的話,叫做屬性,比如年齡、身高、性別、姓名等都叫做屬性,一個類中,可以有多個屬性
方法:人類不止有身高、年齡、性別這些屬性,還能做好多事情,比如說話、走路、吃飯等,相比較於屬性是名詞,說話、走路是動詞,這些動詞用程序來描述就叫做方法。
實例(對象):一個對象即是一個類的實例化後實例,一個類必須經過實例化後方可在程序中調用,一個類可以實例化多個對象,每個對象亦可以有不同的屬性,就像人類是指所有人,每個人是指具體的對象,人與人之前有共性,亦有不同
實例化:把一個類轉變為一個對象的過程就叫實例化
面象過程與面象對象