浅谈PHP设计模式的观察者模式
简介 观察者模式是行为型模式的一种,定义了对象间一对多的关系。当对象的状态发生变化时候,依赖于它的对象会得到通知。 适用场景 类似触发钩子事件,可做消息通知、框架底层监听。 一个对象的改变会导致一个或多个对象发生改变,方便扩展的写法。 优点 方便扩展,降低耦合,统一触发规则。当需要新增或者删除一个观 ...
Spring Boot 学习笔记
SpringBoot 简介 为什么要使用 Spring Boot 因为 Spring,SpringMVC 需要使用的大量的配置文件 (xml文件) 还需要配置各种对象,把使用的对象放入到 spring 容器中才能使用对象 需要了解其他框架配置规则。 SpringBoot 就相当于 不需要配置文件的 ...
OpenGL ES EGL eglGetError
目录 一. EGL 前言 二. EGL 绘制流程简介 三.eglGetError 函数简介 四.eglGetError 函数使用 五.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : O ...
Spring中的观察者模式_监听模式
需求: 执行完某些任务后多渠道发送通知消息 伪代码 消息体 package com.wanqi.pojo; /** * @Description TODO * @Version 1.0.0 * @Date 2022/10/28 * @Author wandaren */ public class M ...
看了我的 mybatis-plus 用法,全公司同事开始悄悄模仿了。。
本文主要介绍 mybatis-plus 这款插件,针对 springboot 用户。包括引入,配置,使用,以及扩展等常用的方面做一个汇总整理,尽量包含大家常用的场景内容。 作者:我犟不过你 原文链接:https://juejin.cn/post/7054726274362638350 关于 myba ...
Spring Retry 重试
重试的使用场景比较多,比如调用远程服务时,由于网络或者服务端响应慢导致调用超时,此时可以多重试几次。用定时任务也可以实现重试的效果,但比较麻烦,用Spring Retry的话一个注解搞定所有。话不多说,先看演示。 首先引入依赖 <dependency> <groupId>org.springfram ...
泛化之美 —— C++11 可变参数模板的妙用
概述 首先这篇文章出自博客园作者:[ 🔗 qicosmos ],我对本文的实例代码进行了学习、思考和整理纠正,理清了文章的全部细节,觉得这是一篇让我受益匪浅的文章。之所以会接触「可变参数模板」这部分的内容,是因为我当下刚好在学C++11 function机制,其内部实现需要接收不定长度的参数,因此 ...
JAVA常见基础知识点
JAVA常见基础知识点 一、注释 Java中有三种注释,分别是单行注释、多行注释、文档注释。 单行注释:注释某一行代码。使用// 多行注释:注释某一段代码。使用/* ... */ 文档注释:用于生成JAVA文档。使用/** ... */ 二、自增自减运算符 ++是自增运算符,—是自减运算符,如果放在 ...
Docker详解
Docker简介 【1】Docker是一个开源的容器引擎,它有助于更快地交付应用。 Docker可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。使用 Docker可更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。 【2】Docker的优点: 1、简化程序 ...
OpenGL ES 名词解释(二)
目录 一.前言 二.坐标系 1.屏幕坐标系 2.纹理坐标系 3.顶点坐标系 4.图像坐标系 三.混合 四.变换矩阵 1.平移 2.旋转 3.缩放 4.矩阵组合顺序 五.投影矩阵 1.正交投影 2.透视投影 3.总结 六.帧缓冲区帧 七.VAO 八.VBO 九.PBO 十.FBO 十一.UBO 十二. ...
C++对象模型:g++的实现(三)
这篇讲一下《深度探索C++对象模型》第三章最后没总结的一部分,就是类的成员变量指针。 这里所谓类的成员变量指针就是指绑定某个类的某个成员变量的指针,而不是某个对象的某个成员变量的指针,下面展现了两者的不同: // test14.cpp #include <cstdio> struct Test { ...
C 语言实现一个简单通讯录
前言 回顾下C语言基础知识,通过实现一个简单小项目达到复习指针、动态内存、文件操作 等基本知识 ###内容 文件结构 main.c concat.h concat.c 入口文件main.c #include "concat.c" void initMemu() { printf("********* ...