模式 设计模式 访问者

《实现领域驱动设计》笔记——领域、子域和限界上下文

总览 从广义上讲,领域(Domain)即是一个组织所做的事情以及其中所包含的一切。商业机构通常会确定一个市场,然后在这个市场中销售产品和服务。每个组织都有它自己的业务范围和做事方式。这个业务范围以及在其中所进行的活动便是领域。当你为某个组织开发软件时,你面对的便是这个组织的领域。这个领域对于你来说应 ......
限界 领域 上下文 上下 笔记

每日随笔——享元模式

[实验任务一]:围棋 设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。 实验要求: 1.提交类图; 2.提交源代码; 3.注意编程规范; 4.要求用简单工厂模式和单例模式实现享元工厂类的设计。 源码: Address package SC13; cl ......
随笔 模式

SD-Host控制器设计架构

SD Host功能列表 系统挂接在SoC中的 有控制寄存器和状态寄存器 内建DMA-数据需要从外部将数据读取到buffer中,然后再对于SD卡进行写操作;对于读操作,首先先将SD卡读取到控制器中buffer中,再从buffer中将数据存储到SoC中的存储单元中,数据搬移需要使用DMA DMA也是挂接 ......
控制器 架构 SD-Host Host SD

学习随笔(设计模式:观察者模式)

内容 今天学习了观察者模式。 1.观察者模式又叫发布-订阅模式。 2.观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生改变时,会通知所有观察者对象,使他们能够自动更新自己。 3.观察者模式所做的工作其实就是在接触耦合。让耦合的双方都依赖于抽象,而不 ......
模式 观察者 设计模式 随笔

1.设计原则

五大设计原则分别为:单一职责原则、开闭原则、里式替换原则、接口隔离原则、依赖反转原则 一、单一职责原则 最初或者说字面解释:每个模块都应该只做一件事。 符合设计层面的描述:任何一个软件模块都应该有且仅有一个被修改的原因。 “被修改的原因”可以用用户或者所有者来指代:任何一个软件模块都应该只对一个用户 ......
原则

适配器模式

[实验任务一]:双向适配器 实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。 实验要求: 画出对应的类图; 提交源代码; Adapter.java package robot; public class Adapter implements Cat,Dog{ private Cat cat= ......
适配器 模式

单例模式 ----实例化类的方法

定义:确保一个类最多只有一个实例,并提供一个全局访问点 单例模式可以分为两种:预加载和懒加载 预加载:顾名思义,就是预先加载。再进一步解释就是还没有使用该单例对象,但是,该单例对象就已经被加载到内存了。 很明显,没有使用该单例对象,该对象就被加载到了内存,会造成内存的浪费。 懒加载:为了避免内存的浪 ......
实例 模式 方法

MySQL大表设计

存储大规模数据集需要仔细设计数据库模式和索引,以便能够高效地支持各种查询操作。在面对数亿条数据,每条数据包含数百个字段的情况下,以下是我能想到的在设计数据库的时候需要注意的内容,不足之处欢迎各位在评论区批评指正: 1. 数据库设计 表结构设计 垂直分割:将大的表分割成多个相关性较小的表,以减少单个表 ......
MySQL

软件设计模式学习每日总结-第九天

第九天 组合模式:组合多个对象形成树形结构,使得叶子和容器的使用具有一致性。 透明组合模式:声明了对象的所有的方法。 安全组合模式:不声明对象的方法。 ......
设计模式 九天 模式 软件

爬虫获取网页开发者模式NetWork信息

using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; using OpenQA.Selenium; using ......
爬虫 开发者 NetWork 模式 网页

领域驱动设计之银行转账:Wow框架实战

银行账户转账案例 银行账户转账案例是一个经典的领域驱动设计(DDD)应用场景。接下来我们通过一个简单的银行账户转账案例,来了解如何使用 Wow 进行领域驱动设计以及服务开发。 银行转账流程 准备转账(Prepare): 用户发起转账请求,触发 Prepare 步骤。这个步骤会向源账户发送准备转账的请 ......
实战 框架 领域 银行 Wow

IdentityServer4:密码模式

IdentityServer4:密码模式 目录 IdentityServer4:密码授权模式 Api 资源项目 创建项目 依赖包 添加认证方案 添加 Api 认证服务器 创建项目 依赖包 配置 IdentityServer4 集成 IdentityServer4 密码模式客户端 创建项目 依赖包 P ......

IdentityServer4:简化(隐式)模式

IdentityServer4:简化(隐式)模式 目录 IdentityServer4:简化(隐式)模式 Api 资源项目 创建项目 依赖包 添加认证方案 添加 Api 认证服务器 创建项目 依赖包 配置 IdentityServer4 集成 IdentityServer4 添加 IdentityS ......
IdentityServer4 IdentityServer 模式

IdentityServer4:授权码模式

IdentityServer4:授权码模式 目录 IdentityServer4:授权码模式 Api 资源项目 创建项目 依赖包 添加认证方案 添加 Api 修改 Index 视图 添加 ApiData 视图 添加 UserInfo 视图 认证服务器 创建项目 依赖包 配置 IdentityServ ......
IdentityServer4 IdentityServer 模式

IdentityServer4:客户端模式

IdentityServer4:客户端模式 目录 IdentityServer4:客户端模式 Api 资源项目 创建项目 依赖包 添加认证方案 添加 Api 认证服务器 创建项目 依赖包 配置 IdentityServer4 集成 IdentityServer4 客户端模式客户端 创建项目 依赖包 ......

2023-2024-1 20211211 《信息安全系统设计与实现(上)》第13章

#1 网络编程简介 TCP/IP协议、UDP和TCP协议、服务器-客户机计算、HTTP和Web页面、动态Web页面的PHP和CGI编程 #2 TCP/IP协议 IPv4 32位地址 IPv6 128位地址 TCP/IP协议顶层是使用TCP/IP的应用程序,用于登录到远程主机的ssh,用于交换电子邮件 ......
20211211 系统 信息 2023 2024

浅谈微服务架构的设计理念

微服务架构是一种软件设计和开发的架构风格,将应用程序划分为一组小而自治的服务,每个服务都有自己的数据存储和业务逻辑,并通过轻量级的通信机制相互协作。以下是微服务架构的一些设计理念: 1. 服务自治性(Service Autonomy): 核心思想: 微服务应该是自治的,即每个服务都独立运行、部署和维 ......
设计理念 架构 理念

OPPO Reno4 SE 5g手机如何出来开发者选项?如何开启USB调试模式?

1:点击设置 2:点击关于本机 3:点击版本信息 4:不停的点击版本号,直到提示进入开发者模式 5:回到设置页面,进入系统设置 6:点击开发者选项 7:打开USB调式(点一下后面的开启按钮) 至此,如果进入开发者模式,调出开发者选项,开启USB调式就介绍完了,接来下就可以将手机通过usb线连接电脑, ......
开发者 模式 手机 Reno4 OPPO

浅谈DDD(Domain-Driven Design)领域驱动设计思想

当提到领域驱动设计(Domain-Driven Design,DDD)时,我们指的是一种软件开发方法,它强调通过深入理解业务领域来指导软件的设计和开发。DDD的核心思想是将业务领域的知识融入到软件模型中,以便更好地满足业务需求。 以下是DDD的一些关键概念和思想: 1. 领域模型: 核心思想: 领域 ......

解释器模式

目录解释器模式概述结构案例实现优缺点使用场景 解释器模式 概述 如上图,设计一个软件用来进行加减计算。我们第一想法就是使用工具类,提供对应的加法和减法的工具方法。 //用于两个整数相加 public static int add(int a,int b){ return a + b; } //用于两 ......
解释器 模式

访问者模式

目录访问者模式概述结构案例实现优缺点使用场景扩展 访问者模式 概述 定义: 封装一些作用于某种数据结构中的各元素的操作,它可以在不改变这个数据结构的前提下定义作用于这些元素的新的操作。 结构 访问者模式包含以下主要角色: 抽象访问者(Visitor)角色:定义了对每一个元素(Element)访问的行 ......
访问者 模式

状态模式

目录状态模式概述结构案例实现优缺点使用场景 状态模式 概述 【例】通过按钮来控制一个电梯的状态,一个电梯有开门状态,关门状态,停止状态,运行状态。每一种状态改变,都有可能要根据其他状态来更新处理。例如,如果电梯门现在处于运行时状态,就不能进行开门操作,而如果电梯门是停止状态,就可以执行开门操作。 类 ......
状态 模式

观察者模式

目录观察者模式概述结构案例实现优缺点使用场景JDK中提供的实现 观察者模式 概述 定义: 又被称为发布-订阅(Publish/Subscribe)模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。 结 ......
观察者 模式

中介者模式

目录中介者模式概述结构案例实现优缺点使用场景 中介者模式 概述 一般来说,同事类之间的关系是比较复杂的,多个同事类之间互相关联时,他们之间的关系会呈现为复杂的网状结构,这是一种过度耦合的架构,即不利于类的复用,也不稳定。例如在下左图中,有六个同事类对象,假如对象1发生变化,那么将会有4个对象受到影响 ......
中介者 中介 模式

迭代器模式

目录迭代器模式概述结构案例实现优缺点使用场景JDK源码解析 迭代器模式 概述 定义: 提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。 结构 迭代器模式主要包含以下角色: 抽象聚合(Aggregate)角色:定义存储、添加、删除聚合元素以及创建迭代器对象的接口。 具体聚合( ......
模式

备忘录模式

目录备忘录模式概述结构案例实现“白箱”备忘录模式“黑箱”备忘录模式优缺点使用场景 备忘录模式 概述 定义: 备忘录模式提供了一种状态恢复的实现机制,使得用户可以方便地回到一个特定的历史步骤,当新的状态无效或者存在问题时,可以使用暂时存储起来的备忘录将状态复原,很多软件都提供了撤销(Undo)操作,如 ......
备忘录 模式

matplotlib模块之绘图设计1

one In [3]: import matplotlib.pyplot as plt import pandas as pd import numpy as np 饼图绘制¶ In [4]: # 解决中文乱码问题 plt.rcParams['font.sans-serif'] = ['SimHei ......
matplotlib 模块

FPGA入门笔记004——BCD计数器设计与使用

1、设置一个最大值为10的四位计数器,Verilog代码如下: module BCD_Counter( Clk, Cin, Rst_n, Cout, q ); input Clk; //计数器基准时钟 input Cin; //计数器进位输入 input Rst_n; //系统复位 // outpu ......
计数器 笔记 FPGA 004 BCD

行为型模式-模板方法模式

1 什么是模板方法模式 模板方法模式是一种行为设计模式,它定义了一个算法的骨架,将一些步骤的具体实现延迟到子类中。这样可以在不改变算法结构的情况下,允许子类根据自身的需求来实现特定的步骤。 模板方法模式通常由一个抽象基类提供一个模板方法,该方法定义了算法的骨架,并调用一系列的抽象和/或具体方法。子类 ......
模式 模板 行为 方法

模拟集成电路设计系列博客——4.1.4 二阶Gm-C滤波器

4.1.4 二阶Gm-C滤波器 下图展示了一个全差分二阶\(G_m-C\)滤波器,其传输函数可以表达为: \[H(s)=\frac{V_{out}(s)}{V_{in}(s)}=\frac{s^2C_X/(C_X+C_B)+sG_{m5}/(C_X+C_B)+G_{m2}G_{m4}/[C_A(C_ ......
滤波器 电路设计 电路 博客 Gm-C
共14000篇  :60/467页 首页上一页60下一页尾页