尼克 尼克
4年前
简说设计模式——观察者模式
一、什么是观察者模式  观察者一般可以看做是第三者,比如在学校上自习的时候,大家肯定都有过交头接耳、各种玩耍的经历,这时总会有一个“放风”的小伙伴,当老师即将出现时及时“通知”大家老师来了。再比如,拍卖会的时候,大家相互叫价,拍卖师会观察最高标价,然后通知给其它竞价者竞价,这就是一个观察者模式。  对于观察者模式而言,肯定有观察
Stella981 Stella981
3年前
Kafka设计解析(十八)Kafka与Flink集成
转载自 huxihx(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Fhuxi2b),原文链接 Kafka与Flink集成(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fww
Wesley13 Wesley13
3年前
Java中多个ifelse语句的替代设计
今天在改老代码的过程中,亲眼见证了一段30个ifelse嵌套的代码...然后搜集了一些资料做了以下简单整理。概述ifelse是任何编程语言的重要组成部分。但是我们编写了大量嵌套的if语句,这使得我们的代码更加复杂和难以维护。接下来,让我们探索如何简化代码的中的ifelse语句写法。案例研究我们经常遇到涉及很
Wesley13 Wesley13
3年前
360°透视:云原生架构及设计原则
云原生(CloudNative)的概念,由来自Pivotal的MattStine于2013年首次提出,被一直延续使用至今。这个概念是MattStine根据其多年的架构和咨询经验总结出来的一个思想集合,并得到了社区的不断完善,内容非常多,包括DevOps、持续交付(ContinuousDelivery)、微服务(MicroServices)、敏捷基础设施
Wesley13 Wesley13
3年前
C语言中的状态机设计
本文不是关于软件状态机的最佳设计分解实践的教程。我将重点关注状态机代码和简单的示例,这些示例具有足够的复杂性,以便于理解特性和用法。背景大多数程序员常用的设计技术是有限状态机(FSM)。设计人员使用此编程结构将复杂的问题分解为可管理的状态和状态转换。有无数种实现状态机的方法。A switch语句提供了状态机最容易实现和最常见的版本之一。
Wesley13 Wesley13
3年前
Mysql表设计需要注意的问题
下面探讨的数据库为MySQL存储引擎为innodb因为这是最常见的,使用最多的数据库和引擎什么是页分裂?这是因为聚簇索引采用的是平衡二叉树算法,而且每个节点都保存了该主键所对应行的数据,假设插入数据的主键是自增长的,那么根据二叉树算法会很快的把该数据添加到某个节点下,而其他的节点不用动;但是如果插入的是不规则的数据,那么每次插入都会改变二叉树之前
Wesley13 Wesley13
3年前
Java设计模式之immutable(不可变)模式
immutable简介不可变对象永远不会发生改变,其字段的值只在构造函数运行时设置一次,其后就不会再改变。例如JDK中常见的两种基本数据类型String和Integer,它们都是不可变对象。为了理解immutable与mutable的区别,可以看看下面的一段代码:packagedate0804.demo2;
Wesley13 Wesley13
3年前
(5) 基于领域分析设计的架构规范
本系列目录:1.改变与优势(https://my.oschina.net/u/4006523/blog/3071568)2.领域分析基础(https://my.oschina.net/u/4006523/blog/3071569)3.读写隔离(https://my.oschina.net/u/4006523/blog/3071
Wesley13 Wesley13
3年前
C++设计模式——备忘录模式
备忘录模式在GOF的《设计模式:可复用面向对象软件的基础》一书中对备忘录模式是这样说的:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。有时有必要记录一个对象的内部状态。为了允许用户取消不确定的操作或从错误中恢复过来,需要实现检查点和取消机制,而要实现这些机制,你必须事先
公孙晃 公孙晃
2年前
FontLab 8,字体编辑设计制作工具
FontLab8是一款专业的字体设计软件,它可以帮助用户创建、编辑、修复和优化字体,支持多种字体格式,包括TrueType、OpenType和Web字体等...