原则

用结构化思维解一切BUG(2):实践原则

这是本系列文章《用结构化思维解决一切BUG》的第2篇(共3篇),本系列文章主要介绍一种「无需掌握技术细节,只需结构化思维和常识即可解一切BUG的方法」。本文主要介绍该方法的实践原则,共 5 条,30 字,字字值千金! ......
思维 原则 结构 BUG

PMP里smart原则

SMART原则是一种用于制定目标和评估目标的有效性的工具。这个术语代表了五个关键特征,确保目标具有明确性和可操作性。以下是SMART原则的各个方面: 具体性 (Specific): 目标应该明确、具体,以便清楚地定义它们。你需要回答以下问题:这个目标是什么?为什么它重要?如何实现它? 可度量性 (M ......
原则 smart PMP

软件设计实验1:UML与面向对象程序设计原则

实验1:UML与面向对象程序设计原则 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、掌握面向对象程序设计中类与类之间的关系以及对应的UML类图; 2、理解面向对象程序设计原则。 [实验任务一]:UML复习 阅读教材第一章复习UML,回答下述问题: 面向对象程序设计中类与类的关系都有哪 ......
程序设计 对象 原则 程序 软件

解析设计模式与设计原则:构建可维护性和可扩展性代码的重要性

本文分享自华为云社区《深入解析设计模式与设计原则:构建可维护性和可扩展性代码的重要性》,作者: Lion Long。 一、为什么需要设计模式? 1.1、设计模式的定义 设计模式大概有23种。 设计模式是指在软件开发中,经过验证的,用于解决在特定环境下,重复出现的,特定问题的解决方案。 从定义可以看出 ......

敏捷开发的十二条原则

转载于:荔枝实验室 我们遵循以下原则: 我们的首要任务是通过尽早和持续交付有价值的软件来满足客户。 欢迎不断变化的需求,即使是在开发后期。敏捷流程利用变化为客户带来竞争优势。 经常交付工作软件,从几周到几个月不等,时间跨度更短。 业务人员和开发人员必须在整个项目期间每天一起工作。 围绕有动力的个人构 ......
原则

设计原则

......
原则

MySQL 创建索引的原则,优化的思路

康师傅yyds 创建索引的原则 1 show index from channel_detail; 2 DROP INDEX idx_cl_channel_id ON channel_label; 3 4 CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX inde ......
索引 思路 原则 MySQL

C#软件架构设计原则

软件架构设计原则 学习设计原则是学习设计模式的基础。在实际的开发过程中,并不是一定要求所有的代码都遵循设计原则,而是要综合考虑人力、成本、时间、质量,不刻意追求完美,要在适当的场景遵循设计原则。这体现的是一种平衡取舍,可以帮助我们设计出更加优雅的代码结构。 分别用一句话归纳总结软件设计七大原则,如下 ......
架构 原则 软件

SOLID 原则

什么是 SOLID? 在程序设计领域, SOLID 是由 Robert C. Martin(敏捷宣言作者之一,曾任敏捷联盟主席)在21世纪早期提出的便于记忆的首字母缩写,指代面向对象编程和面向对象设计的五个基本原则:单一功能、开闭原则、里氏替换、接口隔离以及依赖反转。在这一章我们只关注这些原则各自的 ......
原则 SOLID

开闭原则,依赖倒置原则及IOC控制反转

1、开闭原则(OCP原则) OCP是软件七大开发原则当中最基本的一个原则:开闭原则 开:对扩展开放 闭:对修改关闭 OCP开闭原则的核心 只要在扩展系统功能的时候,没有修改以前的代码,就是符合OCP原则的 反之,如果在扩展系统的时候,修改了之前的代码,则这个设计是失败的,违背了OCP原则 2、依赖倒 ......
原则 IOC

什么是PMP里的沟通的5C原则?

在项目管理和商务沟通中,5C原则通常被提及作为有效沟通的基本准则。PMP(项目管理专业人员)强调沟通的重要性,因为有效的沟通对于项目的成功至关重要。以下是5C原则: 简洁 (Clear):传达信息时,首先要确保信息是明确的,没有歧义。避免使用可能会引起混淆的行话或复杂的术语。 简明 (Concise ......
原则 PMP

Go流程控制与快乐路径原则

Go流程控制与快乐路径原则 目录Go流程控制与快乐路径原则一、流程控制基本介绍二、if 语句2.1 if 语句介绍2.2 单分支结构的 if 语句形式2.3 Go 的 if 语句的特点2.3.1 分支代码块左大括号与if同行2.3.2 条件表达式不需要括号三、操作符3.1 逻辑操作符3.2 操作符的 ......
路径 流程 原则

良好接地指导原则

接地无疑是系统设计中最为棘手的问题之一。尽管它的概念相对比较简单,实施起来却很复杂,遗憾的是,它没有一个简明扼要可以用详细步骤描述的方法来保证取得良好效果,但如果在某些细节上处理不当,可能会导致令人头痛的问题。 对于线性系统而言,"地"是信号的基准点。遗憾的是,在单极性电源系统中,它还成为电源电流的 ......
原则

配置管理的三类配置库原则

1 三库管理原则 项目配置管理的库分为开发库、受控库、产品库。这三个库是相互独立的物理库,其中受控库在逻辑上分为配置库和基线库。 1.1 开发库存放代码、脚本等开发过程中的产物。由开发人员使用。 只有开发人员可读和写。开发人员在配置项写入时,必须填写注释信息以标识配置项的功能;配置项变更时注明变更理 ......
原则

MySQL的最左原则

一、简述 MySQL索引的最左原则指的是,当使用多列索引时,MySQL会优先使用索引中最左边的列。如果查询条件中包含了索引的最左列,那么MySQL会使用这个索引来加速查询。 更具体的描述:建立一个索引,对于索引中的字段,mysql会一直向右匹配直到遇到范围查询(>、<、between、like)就停 ......
原则 MySQL

软件开发中的哲学思想和设计原则

在提供的代码中,虽然是一个技术实现,但也反映了一些软件开发中的哲学思想和设计原则: 异步编程和非阻塞思想: 通过使用 CompletableFuture 和线程池,代码展示了异步编程的思想。这允许程序在执行某些操作时不会阻塞主线程,从而提高了系统的并发性和响应性。 单一职责原则 (SRP): 每个函 ......

面向对象的七大设计原则

1. 单一职责原则(Single Responsibility Principle) 每一个类应该专注于做一件事情。 每一个职责都是变化的一个轴线,如果一个类有一个以上的职责,这些职责就耦合在了一起。这会导致脆弱的设计。当一个职责发生变化时,可能会影响其它的职责。另外,多个职责耦合在一起,会影响复用 ......
七大 对象 原则

架构师必须掌握的架构设计原则

软件设计原则 GRASP 通用职责分配软件模式 来自 Craig Larman 的软件设计书《UML 和模式应用》,Larman 在书中提出软件设计的关键任务是职责分配,并提炼总结出 9 种 (5 种核心 +4 种扩展) 软件职责分配模式,这些模式是比 GoF 设计模式更抽象的元模式。 信息专家 ( ......
架构 原则

C++特种成员函数生成机制及相关原则

C++特种成员函数生成机制及相关原则 注:默认C++标准是C++11及以后的标准,因为C++11之前的标准定义的默认成员函数不包含移动构造函数和移动赋值运算符 1. C++默认成员函数 默认成员函数的定义: 类中没有显示声明,在需要时由编译器自动生成的函数,包括默认构造函数、默认析构函数、默认复制构 ......
函数 机制 成员 原则

微服务的设计涉及表的访问基本原则

微服务的设计涉及表的访问基本原则 1.微服务设计上是高于独立模块,提供服务能力的接口设计。多个微服务之间,如果涉及到访问同一个数据表的访问,更多的考虑将该表的sqlmap dao层的代码归结到某个具体的服务中,而不是在多个服务中都提供一套相同的代码,不便于表的管理。(高内聚,低耦合)其他的服务需要访 ......
基本原则 原则

深入理解设计原则之里氏替换原则(LSP)【软件架构设计】

1、里氏替换原则的定义和解读里氏替换原则(Liskov Substitution Principle, LSP)于1986年有Barbara Liskov提出,他当时是这样描述这条原则的:如果S是T的子类型,那么T的对象可以被S的对象所替换,并不影响代码的运行。1996年,Robert Martin ......
原则 里氏 架构 软件 LSP

面向对象编程的六大原则个人总结(附代码)

面向对象编程的六大原则个人总结(附代码) 目录面向对象编程的六大原则个人总结(附代码)一、什么是单一职责原则?核心思想好处代码示例总结二、什么是里式替换原则?规则代码示例总结三、什么是迪米特法则?核心思想规则代码示例总结四、什么是开闭原则?理解代码示例总结五、什么是依赖倒置原则?核心思想理解代码示例 ......
对象 原则 代码 个人

Linux-----进程的调度基本原则和实现方式

基本原则 公平性 Linux调度器追求公平性,即每个运行中的进程都有机会获得CPU时间。这通过使用时间片轮转算法和动态优先级调度来实现。Linux将进程分为实时(real-time)和普通(normal)进程,以确保实时任务不会被普通任务长时间阻塞。 优先级 Linux采用了静态优先级和动态优先级相 ......
基本原则 进程 原则 方式 Linux

代码重构原则与技巧

代码可读性是衡量代码质量的重要标准,可读性也是可维护性、可扩展性的保证,因为代码是连接程序员和机器的中间桥梁,要对双边友好。 随着项目在不断演进过程中,代码不停地在堆砌,如果没有人为代码的质量负责,代码总是会往越来越混乱的方向演进。当混乱到一定程度之后,量变引起质变,项目的维护成本已经高过重新开发一 ......
原则 代码 技巧

02安全原则:我们应该如何上手解决安全问题

机密性、完整性、可用性 简单说,以购买极客时间为例,机密性就是未付费用户无法学习这个专栏,完整性就是这个专栏不会变成别的其他方向的内容,可用性就是作为付费用户,能够随时学习这个专栏。 那么该怎么解决安全问题呢 黄金法则 三部分:认证(Authentication)、授权(Authorization) ......
原则 问题

设计模式-六大原则

六大原则 目录六大原则单一职责原则(类和方法,接口)开闭原则 (扩展开放,修改关闭)里氏替换原则(基类和子类之间的关系)依赖倒置原则(依赖抽象接口,而不是具体对象)接口隔离原则(接口按照功能细分)迪米特法则 (类与类之间的亲疏关系) 单一职责原则(类和方法,接口) 单一职责原则(Single Res ......
设计模式 原则 模式

面向对象设计原则(背)

......
对象 原则

闲谈:数据安全,万无一失的备份方法,备份3-2-1原则和改进方案

备份3-2-1原则是什么? 数据备份的目的在于,当生产业务数据遭受损失时,能快速地从备份介质中完整地恢复数据。 因此,完整的数据备份应该包含数据可靠地备份,备份数据足够安全,并且能够完整地恢复。 备份领域中,有个3-2-1原则能尽量保证数据的安全。 而所谓的3-2-1法则即为3个副本、2个不同备份介 ......
备份 万无一失 原则 方案 方法

Android GKI 架构 + GKI改造原则、机制和方法

Android GKI 架构简介https://blog.csdn.net/shift_wwx/article/details/126347543 相关术语: ACK:Android Common Kernel AOSP:Android Open Source Project GKI:Generic ......
架构 GKI 机制 原则 Android

Verilog阻塞和非阻塞赋值引申出的原则分析

原则1:时序电路建模时,用非阻塞赋值。 原则2:锁存器电路建模时,用非阻塞赋值。 原则3:用always块写组合逻辑时,采用阻塞赋值。 原则4:在同一个always块中同时建立时序和组合逻辑电路时,用非阻塞赋值。 原则5:在同一个always块中不要同时使用非阻塞赋值和阻塞赋值。 原则6:不要在多个 ......
原则 Verilog