刷新
吊打面试官!从多维度理解架构

博主头像 大家好,我是汤师爷~ 在工作当中,我们经常会听到以下说法: 产品负责人说,现在的业务架构太复杂,需要仔细梳理下。 技术领导说,这个项目很复杂,需要做下系统架构方案评审。 研发经理说,这次秒杀活动访问量非常大,需要用到高并发架构方案。 一线研发说,互联网大厂都会用到微服务架构,我要学学微服务架构设计。 ...

设计模式之状态模式(三分钟学会一个设计模式)

博主头像 状态模式(State Pattern)的定义是这样的:类的行为是基于它的状态改变的。注意这里的状态不是狭义的指对象维护了一个“状态”字段,我们传入了不同的枚举值,对象整体的表现行为(对外方法)就改变了。而是指内部的(任意)字段如果发生了变化,那么它的状态就变了,那么它对外的表现形式就变了。状态模式是 ...

读构建可扩展分布式系统:方法与实践01可扩展系统简介

博主头像 1. 简介 1.1. 在过去20年里,软件系统的规模、复杂性和容量都出现了前所未有的增长 1.2. 代码是容器、数据库、消息传递系统和其他组件的一部分,通过调用API和构建指令,构成你的应用程序 1.3. 可扩展(scalable)是软件工程中用来描述软件系统能够适应增长的术语 1.3.1. 可扩展 ...

一文看懂什么是架构

博主头像 对程序员来说,架构是一个常见词汇。如果想成为一名架构师,对架构概念的理解必须清晰。否则,在制定架构方案时,肯定会漏洞百出,问题频发,这将对你的面试、晋升和团队领导产生负面影响。 我们看下维基百科关于架构的定义: 软件架构是抽象描述系统的一组结构,以及构建这些结构的规则。这些结构包括:软件要素、要素之 ...

读软件设计的要素07读后总结与感想兼导读

博主头像 1. 基本信息 软件设计的要素 丹尼尔·杰克逊著 浙江教育出版社,2024年5月出版 1.1. 读薄率 书籍总字数236千字,笔记总字数18853字。 读薄率18853÷236000≈8% 1.2. 读厚方向 构建可扩展分布式系统方法与实践 设计模式:可复用面向对象软件的基础 程序员修炼之道:通向务 ...

读软件设计的要素06概念完整性

博主头像 1. 概念完整性 1.1. 当概念组合成一个软件时,它们可以同步以便协调行为 1.1.1. 同步可能会消除一个概念的某些行为,但决不会添加与该概念的规范不一致的新行为 1.1.2. 在使用概念设计软件时,即使你没有精确定义同步,至少要说服自己,概念之间的每次交互至少在原则上都可以被视为同步 1.2. ...

读软件设计的要素05概念的特性

博主头像 1. 概念的特性 1.1. 专一性原则(specificity principle)认为概念与目的应该一一对应 1.1.1. 专一性原则已被证明是概念设计中最有用的原则之一 1.1.2. 一个概念最多只能满足一个目的 1.2. 很少有没有目的的概念 1.2.1. 如果本应隐藏的用户机制被暴露,可能会 ...

读软件设计的要素04概念的关系

博主头像 1. 概念的关系 1.1. 概念是独立的,彼此间无须相互依赖 1.1.1. 一个概念是应该独立地被理解、设计和实现的 1.1.2. 独立性是概念的简单性和可重用性的关键 1.2. 软件存在依赖性 1.2.1. 不是说一个概念需要依赖另一个概念才能正确运行 1.2.2. 只有当一个概念存在时,包含另一 ...

读软件设计的要素03概念的组合

博主头像 1. 概念的组合 1.1. 概念不像程序那样,可以用较大的包含较小的 1.1.1. 每个概念对用户来说都是平等的,软件或系统就是一组串联运行的概念组合 1.2. 概念是通过操作来同步组合的 1.2.1. 同步并不增加新的概念操作,但会限制已有的操作,从而消除一些独立概念可能会出现的操作序列 1.3. ...

PLC结构化文本(ST)——变量类型和变量属性

博主头像 PLC Structured Text Object Oriented Programming PLC结构化文本(ST)——变量类型和变量属性 变量类型 变量类型关键字 说明 外部读写 内部读写 VAR 内部变量,程序组织单元内部的变量 不允许 读/写 VAR_INPUT 输入变量,由外部提供,在程 ...

读软件设计的要素02概念的目的

博主头像 1. 要素 1.1. 概念的定义包括名称、目的、状态、操作和操作原则 1.2. 操作原则(operational principle) 1.2.1. 操作原则用于展示如何通过操作实现目的,这是理解概念的关键 1.2.2. 展示如何通过操作的组合实现概念的目的,包含一个或多个典型的使用场景 1.2.3 ...

PLC结构化文本(ST)——构造函数(FB_init)

博主头像 PLC Structured Text Object Oriented Programming PLC结构化文本(ST)——构造函数(FB_init) 构造函数的作用 简单来说,构造函数是一种方法,用来初始化类的实例也就是对象。类在创建时会有一个默认的构造函数,如果自定义一个构造函数,那么默认构造函 ...

PLC结构化文本(ST)——访问修饰符

博主头像 PLC Structured Text Object Oriented Programming PLC结构化文本(ST)——访问修饰符 访问修饰符及作用 根据出现位置不同划分 1.出现在功能块(FB)中 ①.Public:最低访问级别,此功能块可以被任何地方声明调用。 ②.Internal:只允许当 ...

读软件设计的要素01概念

博主头像 1. 概念 1.1. 一个软件,从运行于手机上的最小程序到大型的企业系统,都是由概念组成的,每个概念都是独立的功能单元 1.2. 软件中的可用性问题,经常可以追溯到其底层概念 1.2.1. 概念帮助识别软件的不可用性 1.3. 概念都是以同样形式在各种软件中重复使用的 1.3.1. 将设计分解为最基 ...

PLC结构化文本(ST)——接口(Interface)

博主头像 PLC Structured Text Object Oriented Programming PLC结构化文本(ST)——接口(Interface) 接口定义 接口定义了所有类继承接口时应遵循的语法合同。接口定义了语法合同 "是什么" 部分,派生类定义了语法合同 "怎么做" 部分。 接口定义了属性 ...

<1···789···50>