初识设计模式 - 中介模式
中介模式属于行为型设计模式,可以将原本难以理解的网状结构转换成了相对加单的星型结构,主要用来降低多个对象和类之间的通信复杂性。 ...阅读全文
中介模式属于行为型设计模式,可以将原本难以理解的网状结构转换成了相对加单的星型结构,主要用来降低多个对象和类之间的通信复杂性。 ...阅读全文
面向对象之元类 一、什么是元类 Python中一切皆为对象,对象是有类实例化生成; 类也是对象(类对象),生成类对象的类可称之为元类; 所以,元类就是来创建类对象的,可称之为类工厂; type是python内建元类,type是最上层的元类,也可称为一切类对象的元类 二、元类推导流程 """推导步骤1 ...阅读全文
职责链模式是一种与策略模式类似的设计模式,都是使用多个对象去处理同一个请求。不同的是,职责链模式针对的一条链路上的所有对象,而不是“非此即彼”的关系。 ...阅读全文
派生方法实战 以上我们学习了通过super()的方法可以重写父类、额外添加父类中的数据,下面将通过实战案例来讲述super()方法来重写、添加父类中的功能代码 需求: 1、使用json格式,序列化字典d d = { 't1': datetime.date.today(), 't2': datet ...阅读全文
简介 备忘录设计模式(Memento Design Pattern)也叫作快照(Snapshot)模式,主要用于实现防丢失、撤销、恢复等功能。 其定义是,在不违背封装原则的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,以便之后恢复对象先前的状态。 典型实现 首先,定义一个备忘录 Mem ...阅读全文
apijson 初探 本文试着用 5W1H 方式切入,试图快速建立自己对 apijson 的整体认知,所以这不是一趟快速入门的 demo 之旅,而是显得比较务虚的探索式知识体系整合过程。 持续更新中... 1、Why 前后端开发过程中各种痛点: 开发流程繁琐、周期长 前端/客户端与后端各种扯皮 文档 ...阅读全文
模板方法模式是一种行为设计模式,它在超类中定义了一个算法的框架,允许子类在不修改结构的情况下重写算法的特定步骤。 ...阅读全文
命令模式是一种数据驱动的设计模式,它属于行为型设计模式。通过使用命令模式,可以极大地降低系统的耦合度。 ...阅读全文
策略模式是一种非常容易理解的设计模式,其最常见的应用场景是,利用它来避免冗长的 if-else 或 switch 分支判断。 ...阅读全文
观察者模式是使用频率最高的设计模式之一,用于建立对象与对象之间的依赖关系。当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 ...阅读全文
微前端 微前端,前端这次词就不用多做解释了,这个概念的重点在于这个“微”字, 从字面意义上看,微是小的意思,小是相对于大的一个用于比较的形容词,所以通常是在项目庞大的情况下,才会考虑将它变小,去考虑将它拆分成若干个小项目。这就是做微前端所要达到的主要目标,将庞大的项目拆分成多个独立运行、独立部署和独 ...阅读全文
顾名思义,迭代器就是用于迭代操作的对象,其能够像有序序列一样迭代获取集合中对象,并且能够记录下当前所在位置,因此也称游标。 ...阅读全文
概述 策略模式(Strategy Pattern)的思想是在程序运行时动态改变某一个类的执行逻辑,属于一种行为型设计模式。目的是为了尽可能的减少if...else代码。它的核心在于”选择“两个字,每一种选择就是一个策略。通常情况下,在选择不多的时候,我们采用的是if...else代码块来实现。但是这 ...阅读全文
quick review 配合案例讲述设计模式(一些基础的java和uml知识) 设计时考虑如何使模式变得更好(实践出真知) auction auctionItem(封装和信息隐藏) 面向对象把细节隐藏在对象内部,把公共部分作为接口,抽象成一个类型,然后实例为不同的对象 第一个要想的,哪些细节是要被 ...阅读全文
享元设计模式(Flyweight Design Pattern)通过共享技术实现相同或相似对象的重用,节省内存,前提是享元对象是不可变对象。 ...阅读全文
观察者模式也可以理解为:发布订阅模式 发布者状态更新,通过管道接口实现订阅者动态更新 1 class Middleware: 2 """ 3 发布者和订阅者交互类 4 0、订阅者容器列表 5 1、包括订阅者的增加、删除 6 2、通过管道通知订阅者 7 """ 8 9 def __init__(sel ...阅读全文
组合设计模式(Composite Design Pattern)其应用场景非常特殊,主要用于处理树形结构数据,它可以让叶子对象和容器对象的使用具有一致性。 ...阅读全文
定义抽象基类,规范接口内部方法执行顺序 在进阶篇中,没专门提过抽象基类,在这里顺便就提一下 抽象基类的核心特征:不能被直接实例化(除非所有的抽象方法都被实现) 相反,抽象基类和元类一样,一般都被当做顶层基类使用,派生类必须实现抽象类中指定的方法,且方法名也必须保持一致 抽象基类的主要用途:从一种高层 ...阅读全文
外观模式是最常用的结构型设计模式,也是一种非常容易理解的设计模式,其核心就是为多个子系统提供一个统一的接口,将这个接口看作是这些子系统的门面。 ...阅读全文
前后端开发模式 API接口、接口测试工具postman、restful规范、序列化与反序列化、djangorestframework快速使用 Django Rest_Framework rest-framework之APIView基本使用及源码分析、Request类源码分析、序列化组件介绍及基本使用 ...阅读全文