Python:设计模式之设计模式简介

简介: Python:设计模式之设计模式简介

1、面向对象

对象
    应用程序内的实体
    定义对象的属性(数据成员)和行为(成员函数)
    构造函数:初始化对象状态
    模板,利于复用
方法
    表示对象的行为
    处理属性,实现功能

2、面向对象的主要概念

封装:

数据和方法的隐藏
多态:
对象根据输入参数提供方法的不同实现
不同类型的对象可以使用相同的接口
继承:
不同类的对象之间建立层次结构
抽象:
客户端不需要知道内部实现
组合:
无需通过继承就可以实现基本功能的跨模块使用

3、面向对象的设计原则

开放封闭
开放扩展,封闭修改,向后兼容
控制反转
细节依赖于抽象
接口隔离
客户端不应该依赖于他们不需要使用的接口
单一职责
类的职责单一,引起类变化的原因单一
替换原则
派生类必须能够完全取代基类

4、设计模式概念

解决特定问题的解决方案
从别人的成功中学习

5、模式分类

创建型
结构型
行为型

参考

《Python设计模式第2版》第一章 设计模式简介

            </div>
目录
相关文章
|
11月前
|
机器学习/深度学习 传感器 人工智能
深度学习中的图像识别技术及其应用
在人工智能的浪潮中,深度学习已经成为推动技术创新的核心力量。本文将深入探讨深度学习在图像识别领域的应用,从基本原理到实践案例,展示如何通过神经网络模型实现高效准确的图像处理。我们将一起探索卷积神经网络(CNN)的奥秘,并通过实际代码示例,了解如何训练和部署这些模型来解决现实世界的问题。无论你是深度学习的初学者还是希望深化理解的开发者,这篇文章都将为你提供价值丰富的知识和技能。
|
数据中心 芯片
什么是SFP?SFP的主要特点
【4月更文挑战第21天】
2442 0
什么是SFP?SFP的主要特点
|
iOS开发
iOS更新iOS15.0后APP图标变网格空白问题
iOS更新iOS15.0后APP图标变网格空白问题的解决
678 0
|
领域建模 uml Android开发
element-ui:el-autocomplete实现滚动触底翻页
element-ui:el-autocomplete实现滚动触底翻页
500 0
element-ui:el-autocomplete实现滚动触底翻页
|
API Android开发 开发者
AppCompat 用了这么久,你真的了解吗?
为了能够让低版本的Android系统能够运行新特性,AppCompat框架自Support时代就已推出。但随着AndroidX的一统江湖,AppCompat的相关类则一并迁移到了AndroidX库里。
834 0
|
存储 分布式计算 Hadoop
Hadoop中HDFS优缺点
Hadoop中HDFS优缺点
359 0
|
存储 编解码 生物认证
华为Mate 10和Mate 10 Pro终极对比,结果很尴尬?
去年12月,作为华为的两大高端型号之一,Mate 9系列同时推出了普通版、pro版和保时捷版,后两者作为向高端市场的进一步上探并收到了不错的市场反响后。今年华为再接再厉,继续推出了Mate 10系列的普通版、pro版和保时捷版。
918 0
华为Mate 10和Mate 10 Pro终极对比,结果很尴尬?
|
移动开发 监控 Cloud Native
手淘TMQ云上性能测试解决方案,解放你的双手
阿里QA导读:10月20日,阿里云移动研发平台EMAS应用质量管理沙龙,首站杭州取得圆满成功!此次沙龙邀请到淘宝高级技术专家韩锷,阿里云技术专家尚仁、玄工、宝文、州牧和大家进行分享交流。现场围绕无线性能测试解决方案、无线App线上质量监控实践、云原生移动DevOps解决方案、热修复服务展开分享交流。阿里云EMAS联合手淘技术,现场重磅发布了TMQ & MQC无线性能测试解决方案,方案基于上云场景进行共建,打造出通用的高标准性能分析工具。
774 0
手淘TMQ云上性能测试解决方案,解放你的双手