面象过程
面向过程又被称为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))、共同的方法
-
属性:人类包含很多特征,把这些特征用程序来描述的话,叫做属性,比如年龄、身高、性别、姓名等都叫做属性,一个类中,可以有多个属性
-
方法:人类不止有身高、年龄、性别这些属性,还能做好多事情,比如说话、走路、吃饭等,相比较于属性是名词,说话、走路是动词,这些动词用程序来描述就叫做方法。
-
实例(对象):一个对象即是一个类的实例化后实例,一个类必须经过实例化后方可在程序中调用,一个类可以实例化多个对象,每个对象亦可以有不同的属性,就像人类是指所有人,每个人是指具体的对象,人与人之前有共性,亦有不同
-
实例化:把一个类转变为一个对象的过程就叫实例化
<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">