Home
Johney Zheng
Cancel

设计模式-单例模式

概念解析 设计模板 实例分析 概念解析 顾名思义,单例模式,指的便是:希望类只能有一个实例,通常应用于一些全局管理器。 设计模板 以下展示三种不同的单例模式的实现方式: class Singleton1(object): "单例实现方式一:基本实现" __instance = None __isFirstInit = False d...

设计模式-克隆模式

概念解析 设计模板 实例分析 概念解析 克隆模式的核心是:通过拷贝自身属性来创建一个新对象,核心方法就是 clone 方法,包括两个步骤: 分配一块新的内存空间给新的对象 拷贝父本对象的所有属性 克隆模式的特点是: 通过内存拷贝的方式进行复制,比new方式创建对象性能更好 可以选用设计浅拷贝和深拷贝 通过clone方式创建,不会执行类的初始...

设计模式-中介模式

概念解析 设计模板 实例分析 概念解析 中介模式指的是:用一个中介对象来封装一系列的对象交互,中介者使各个对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变地改变它们之间的交互。中介模式主要有三个角色: 交互对象(InteractiveObject): 要进行交互的一系列对象 中介者(Mediator):负责协调各个对象之间的交互 具体中介者(...

Python-常用装饰器

简单聊聊装饰器 常用装饰器介绍 Python自带的 装饰器 用法: 常用的一些自定义 *装饰器*: 部分参考资料 简单聊聊装饰器 装饰器是 Python 提供的语法糖:通过 @ 的方式构造,传入函数,装饰器返回的是内部函数 wrapper() ,该函数本身不会改变传入的函数,但是会添加一些额外的功能,常见的如:统计运行时间...

设计模式-UML

前言 UML类图 前言 UML 为 Unified Modeling Language 的缩写,即“统一建模语言”。其作用在于建立了一套整图组成的标准化建模语言,用于帮助系统开发人员阐明、设计和构建软件系统。UML图一般分为两组,一组称为结构性图,如类图、组件图、部署图等;一组称为行为性图,如用例图、活动图、序列图等。其中应用最为广泛的便是类图了,常用于系统软件设计。 UM...

Transformer在CV领域的应用与部署

前言 Transformer介绍 Transformer for CV Transformer类网络部署 参考资料 前言 浅谈 Transformer 原理以及基本应用以及模型优化的一些思考。 Transformer介绍 Transformer 最早出自Google 2017年发布的论文:Attention is all you need。Transforme...

Python-单元测试

前言 基本使用(unittest) mock patch 高质量单元测试 前言 单元测试(unit test),对于程序规范开发,尤其是测试驱动开发(TDD),非常重要。单元测试,其核心是:编写测试来验证某一个模块的功能正确性,一般会指定输入,验证输出是否符合预期。 对Python而言,常用的测试相关库有:unitest/nose/pytest等。这里重点介绍下u...

Python-上下文管理器

前言 基于类的上下文管理器 基于生成器的上下文管理器 前言 上下文管理器(context manager),其作用能够帮助自动分配并且释放资源,其中最典型的便是 with 语句: for x in range(10000000): with open('test.txt', 'w') as f: f.write('hello') 其等效于: ...

Python-垃圾回收

前言 垃圾回收方法 内存泄漏调试 前言 垃圾回收对于每一门语言来说都是至关重要的,其核心功能是进行“内存管理”,防止”内存泄漏“,所谓”内存泄漏”指的是:程序未能释放已不再使用的内存,通常是因为程序设计上的问题,导致程序失去了对使用过的内存的控制,导致了内存的浪费。 本文重点梳理下 Python 下的垃圾回收机制。 垃圾回收方法 Python 中最常用的是 计数引用 ...

Python-闭包+装饰器

前言 闭包 装饰器 前言 本文介绍下 闭包(closure) , 装饰器(decorator) 合理使用 闭包 可以简化程序复杂度,提高可读性。 闭包常常和 装饰器 一起使用,能很大提高程序的可读性和复用性。 闭包 所谓闭包,指的是:函数定义中存在“嵌套函数”场景,且外部函数返回的是一个函数。返回的函数可以赋给变量,在后续被调用。下面举个计算指数的用例: def n...