模式 设计模式 责任

模板方法模式

概述 《设计模式》一书中对于 “模板方法模式” 的意图描述如下: 定义一个操作中的算法骨架,而将一些步骤延迟到子类中 一般在以下几种情况下使用模板方法模式: 一次性实现一个算法的不可变部分,并将可变的行为留给子类来实现 各个子类中的公共行为应当被提取出来并集中到一个公共父类中以避免重复代码(提炼父类 ......
模板 模式 方法

实验二 服务器端简单程序设计

实验项目名称:实验二 服务器端简单程序设计 一、实验目的 通过一个小型网站的开发,掌握JSP基础知识,加深对session,request,response,cookie等对象的理解,掌握其使用方法,进一步深入掌握HTML、CSS和JavaScript等知识。 二、实验内容和基本要求 1) 编写in ......
单程 服务器

基于海思H3520DV400和QT5.9设计的车载终端DVR控制平台

​ 前言: 随着4G/5G的发展,无线带宽不断的扩大,数据流量费用不断的降低,使得现在的实时网络视频和视频监控逐渐的普及。 传统的安防项目和车载监控系统都离不开音视频的录制,保存,回放,再加上现在的远程实时视频和远程视频文件调取下载,使得车载终端以及DVR这类设备得以继续的发展。 这里介绍一种使用Q ......
车载终端 终端 H3520 平台 3520

状态模式控制设备

状态模式是一种行为型设计模式,它允许对象在内部状态发生变化时改变它的行为。在这个场景中,我们可以将自动、半自动、手动三种工作模式看做是不同的状态,根据不同的状态来执行不同的行为。 下面是使用C#状态模式来编写自动、半自动、手动功能模块程序的示例代码: 创建一个抽象状态接口,定义三种不同状态对应的方法 ......
状态 模式 设备

缓存的三种更新模式

Cache Aside(旁路缓存) 最常使用的模式。一般由写操作删除cache,读操作设置cache 写 先更新DB 然后直接删除 cache 读 从 cache 中读取数据,读取到就直接返回 cache 中读取不到的话,就从 db 中读取数据返回 再把数据放到 cache 中。 缺陷 缺陷1:首次 ......
缓存 模式

C/C++《程序设计基础(C语言)课程设计》[2023-04-20]

C/C++《程序设计基础(C语言)课程设计》[2023-04-20] 《程序设计基础(C语言)课程设计》 课程说明及动员 《程序设计基础(C语言)课程设计》指导教师组 目录 课程目的 >>课程要求 >>团队题目 >>实施方案 >>课程设计报告 >>考核与成绩评定方法 >>本学期实施安排 >>其他说明 ......
程序设计 语言 课程 基础 程序

原型设计工具比较及实践

() 一、原型设计工具比较 ###1. 墨刀 • 适用领域: 适合设计团队和个人用户使用,可用于移动端和Web端原型设计。 • 优点:支持快速制作原型,具有丰富的交互组件和模板库,界面简单易上手。同时,可以与 Sketch 和 Figma 等设计软件进行集成,方便团队协作。 • 缺点:对于复杂的数据 ......
原型 工具

测绘与设计之间的鸿沟:坐标系,看图新地球软件如何巧妙化解

一、背景 2008年,我国推出了2000国家大地坐标系(以下简称国家2000坐标系),截至2022年,国家2000坐标系在自然资源领域已经取得了较高的普及率,但在工程建设领域的普及率依旧比较低,很多工程项目仍然在沿用五花八门的地方坐标系。 二、设计行业用户痛点 中科图新接触过大量的设计院用户,他们经 ......
坐标系 鸿沟 坐标 地球 之间

基因组坐标到转录本坐标转换——单碱基模式

今天分享一个自己写的python小脚本可以实现单碱基的基因组位置转换到转录本的坐标,欢迎大家使用,并提出错误 #!/share/home/hujun/miniconda3/bin/python3 import pybedtools from pybedtools import BedTool imp ......
坐标 碱基 基因组 基因 模式

26 25 | 异常设计,让错误无处遁形

你好,我是乔新亮。 今天,我想和你聊聊有关异常设计的话题。 如果你认真听了前面的内容,那么对你来说,异常设计应该不是一个新鲜概念了。在高可用设计、监控体系建设部分,我们都聊到了对异常的管理。 那么,为什么今天我们又要单独聊异常设计呢?因为异常管理虽然属于监控体系的一部分,但并不完全依赖于监控体系或高 ......
错误 26 25

27 26 | 上云设计,融合云计算的未来

你好,我是乔新亮。 如果不考虑本周五将要更新的“结束语”,那么实际上,我们已经来到了整个专栏的最后一讲。在这一讲里,我打算和你聊聊有关“上云设计”的话题。 为什么要在这样的时刻聊起云计算呢? 这其实和当代 IT 产业的发展趋势有关,可以说,云计算产业的成熟,直接影响了很多问题的思考方式。 前段时间, ......
27 26

25 24 | 监控设计,让一切都有迹可循,尽在掌控

你好,我是乔新亮。 这一讲,我想和你聊聊如何做好监控设计。 你可能会想,为什么要聊监控呢?做监控不是很简单吗? 所有做技术的同学,基本都会根据公司的日志规范,在代码中打印 Log ,以记录告警和报错。许多企业,也会将日志收集分析,以此形成对系统状态的监控。如果条件允许,团队还可以使用各类免费或付费的 ......
25 24

一文搞定接口幂等性架构设计方案

幂等性介绍 现如今很多系统都会基于分布式或微服务思想完成对系统的架构设计。那么在这一个系统中,就会存在若干个微服务,而且服务间也会产生相互通信调用。那么既然产生了服务调用,就必然会存在服务调用延迟或失败的问题。当出现这种问题,服务端会进行重试等操作或客户端有可能会进行多次点击提交。如果这样请求多次的 ......
架构 接口 方案

23 22 | 扩展性设计,看透业务的本质

你好,我是乔新亮。 这一讲,我想和你聊聊,如何做好扩展性设计。 说到扩展性设计,可能你的第一反应是业务拆分、集群扩容等等。说得没错,这些都能增强系统的扩展性,但仅仅局限于架构和技术层面。我的下属经常兴奋地向我描述,说他实现了一个非常厉害的、高性能、高可扩展性的系统。我的回答经常是,你说的都对,然后呢 ......
扩展性 本质 业务 23 22

19 18 | 架构设计,专业分工和协作精神的体现

你好,我是乔新亮。今天,我想和你聊聊,关于架构设计的一些认知和体会。 作为技术人,最常接触的概念,恐怕就是架构设计了。即便是初出茅庐的新手程序员,可能也听说过 6 大设计原则与 23 种设计模式。因为,要成为管理者或技术专家,架构设计绝对是你绕不开的槛。 因此,关于架构设计的书和课程非常多,多到简直 ......
架构 精神 专业 19 18

21 20 | 高可用设计,让产品没有后顾之忧

你好,我是乔新亮。这一讲,我想和你聊聊,关于高可用设计的那些事儿。 一提起高可用设计,很多同学立刻就会想到“冗余设计”、“故障转移”等关键词。确实,在大部分与高可用相关的分享里,这两个词往往会被重点强调。 所谓“冗余设计”,是指要通过集群来替代单点服务,做好冗余备份。单点架构是高可用的大敌,“把鸡蛋 ......
后顾之忧 产品 21 20

22 21 | 高性能设计,一切都围绕着契约精神

你好,我是乔新亮。这一讲,我们来聊聊如何实现架构的高性能设计。 前面我们讲过,产品思维有两个核心关键词:“契约精神”和“洞察人性”。其实高性能设计,也和契约精神是密切相关的。我将其总结为:高性能设计,一切围绕着契约精神。 你可能会想,高性能设计不就是可以支撑大流量、高并发的架构设计吗?和契约精神又有 ......
契约 高性能 精神 22 21

02-ES5中的严格模式

title: 02-ES5中的严格模式 为什么在讲ES6之前,我们需要先了解ES5?因为很多人就是在学习ES6的过程中,才接触到es5这个概念。 ES的几个重要版本 ES 5 : 09年发布。 ES 6(ES2015) : 2015年发布,也称为ECMA2015。 ES 7(ES2016) : 20 ......
模式 ES5 02 ES

3D建模设计软件-Rhinoceros7中文mac版

Rhinoceros是一款三维建模设计软件,拥有强大的功能和易于使用的界面,能为您在工作中的任何时间和地点进行建模以及计算。通过将3D建模结果导出到 CAD/CAM/DOM文件夹,您可以更轻松地完成原型设计。您只需将草图转换为代码,即可完成一项复杂建筑的原型创建工作。本软件中支持多种类型的三维动画, ......

单例模式:生成只存在一个的实例

饿汉模式 public class Singleton { /* 在类装载的时候就完成实例化 */ private static Singleton instance = new Singleton(); /* 私有构造方法,防止被实例化 */ private Singleton() { } /* ......
实例 模式

【备忘录设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

简介 备忘录模式(Memento Pattern)是一种结构型设计模式。这种模式就是在不破坏封装的条件下,将一个对象的状态捕捉(Capture)住,并放在外部存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。备忘录模式常常与命令模式和迭代子模式一同使用。 备忘录模式的角色有三个:备忘 ......
设计模式 备忘录 语言 模式 Python

心法|大型高并发系统的逃生能力架构要如何设计

故障是无法避免的,所以作为一个大型互联网系统,逃生能力的架构设计尤其重要,一个具备优秀逃生能力的系统,在故障发生后,可以把用户影响降到最低甚至无损,多年在小爱/米家一次次大小故障的处理和复盘中,慢慢形成了一些经验和方法的思考。 大型互联网系统,模块多、依赖关系和运行环境复杂,逃生能力一定是要拿出来当 ......
架构 能力 系统

1.WPF UI - 现代化设计的开源 WPF 框架

1.WPF UI - 现代化设计的开源 WPF 框架 WPF UI 是一个基于 C# 开发的, 拥有 4k star 的开源 UI 框架。WPF UI 在 WPF 的基础上,提供了更多的现代化,流利的,直观的设计和组件。重要的是,WPF UI 完全免费! 如果你对 WPF 比较熟悉,那么可以很快的上 ......
WPF 框架 UI

从小米小爱业务中来到其他业务中去——AiFault运维中台设计实践

“ AiFault是我们AIoT SRE团队研发的插件化智能应用运维中台,从0到1孵化自小爱一线运维实战,旨在用DevOps思想和工具化思维,系统全面的解决应用运维的各种问题,目标是能够承载一套完整的运维体系,最终实现一站式智能运维。” 生产力决定生产关系,到某个阶段,生产力要继续提升,就必须改变生 ......
业务 小米 AiFault

AiFault之全链路监控在小米小爱的设计实践

AiFault是我们AIoT SRE团队研发的插件化智能应用运维中台,旨在用DevOps思想和工具化思维,系统全面的解决应用运维的各种问题,目标是能够承载一套完整的运维体系,最终实现一站式智能运维。 作为当初刚到小爱的SRE工程师,倍感痛苦,每天花大量时间处理告警定位问题,但似乎总是摸不到小爱同学的 ......
链路 小米 AiFault

AiFault之运维平台的插件化设计实践——工具共享共建

AiFault是我们AIoT SRE团队研发的插件化智能应用运维中台,从0到1孵化自小米小爱的一线运维实战,旨在用DevOps思想和工具化思维,系统全面的解决应用运维的各种问题,目标是能够承载一套完整的运维体系,最终实现一站式智能运维。 AiFault插件中心 一、DevOps背景 方案都是由问题驱 ......
插件 AiFault 工具 平台

大厂SRE管理者要如何设计团队的DevOps自动化体系?

自动化体系在一个技术团队中尤其重要,他代表着效率和未来。在运维团队,我认为SRE自动化的终极目标就是建立一套DevOps体系,能够把所有的运维场景承载下来并全部自动化,全链路的提升SRE的工作效率、解放人力,为此在团队里我提出了自动化的北极星:能自动化的全部自动化。 解放人力不是把自己干掉,我认为自 ......
管理者 团队 体系 DevOps SRE

大型互联网系统技术架构设计的4个基本要素

作为一名大厂SRE,对什么是好产品(技术架构角度)有深刻的感悟。一个好产品的技术架构不仅在优秀的代码本身,更体现在后期的易运维性、可扩展性、高可用性上。随着用户体量、产品功能、IaaS、PaaS的变化甚至员工的离职,随时需要动态调整架构改变策略来应对各种问题,而这些场景都是对技术架构是否优秀、是否有 ......
架构 要素 互联网 系统 技术

一种面向后端的微服务低代码平台架构设计

结合京东业务研发实际情况,针对后端研发人员,设计一个微服务低代码平台,助力更高效低交付业务需求。现已结业,将我在本次项目中沉淀设计出的设计文档整理成文,期待与大家有进一步的碰撞沟通 ......
架构 端的 代码 平台

设计模式之观察者模式

设计模式之观察者模式 @Component public class MyApplicationListener implements ApplicationListener<ApplicationStartedEvent > { @Override public void onApplicatio ......
模式 观察者 设计模式