七大 原则

代码重构原则与技巧

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

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

STL(8) 迭代器设计原则和traits

目录iterator的原则以rotate为例子五种类型traits Traits:特征 Traits就是说你丢给他一个东西,希望得到某些特征 iterator的原则 是算法和容器的桥梁 用iterator告诉算法操作范围 在操作的过程中,算法想知道iterator的性质,从中选择最佳化的动作 以ro ......
原则 traits STL

其它原则

# 合成/聚合复用原则 > (Composite/Aggregate ReusePrinciple ,CARP): 要尽量使用对象组合,而不是继承关系达到软件复用的目的 # 定义 经常又叫做合成复用原则(Composite ReusePrinciple或CRP),尽量使用对象组合,而不是继承来达到复 ......
原则

D依赖倒置原则DIP

> Dependency-Inversion Principle 要依赖抽象,而不要依赖具体的实现, 具体而言就是高层模块不依赖于底层模块,二者共同依赖于抽象。抽象不依赖于具体,具体依赖于抽象。 # 定义 高层模块不应该依赖低层模块,它们都应该依赖抽象。抽象不应该依赖于细节,细节应该依赖于抽象。简单 ......
原则 DIP

L里氏替换原则LSP

> Liskov Substitution Principle ,LSP: 任何基类可以出现的地方,子类也可以出现;这一思想表现为对继承机制的约束规范,只有子类能够替换其基类时,才能够保证系统在运行期内识别子类,这是保证继承复用的基础。 # 定义 第一种定义方式相对严格: 如果对每一个类型为S的对象 ......
里氏 原则 LSP

O开放封闭原则OCP

> Open - ClosedPrinciple ,OCP, 对扩展开放,对修改关闭(设计模式的核心原则) ## 定义 > 一个软件实体(如类、模块和函数)应该对扩展开放,对修改关闭. 意思是,在一个系统或者模块中,对于扩展是开放的,对于修改是关闭的,一个 好的系统是在不修改源代码的情况下,可以扩展 ......
原则 OCP

软件开发中的原则 - SOLID

在软件开发中,前人对软件系统的设计和开发总结了一些原则和模式, 不管用什么语言做开发,都将对我们系统设计和开发提供指导意义。本文主要将总结这些常见的原则,和具体阐述意义。 # 开发原则SOILD > 面向对象的基本原则(solid)是五个,但是在经常被提到的除了这五个之外还有 迪米特法则和合成复用原 ......
软件开发 原则 SOLID 软件

软件开发原则

## 软件开发原则 | 原则 | 介绍 | | | | | 单一职责原则 | 一个类或模块应该只负责一项任务或功能 | | 开闭原则 | 软件实体(类、模块、函数等)应该对扩展开放,对修改关闭 | | 里氏替换原则 | 子类应该能够替换其父类并且不会破坏程序的正确性 | | 接口隔离原则 | 客户端 ......
软件开发 原则 软件

六大程序设计原则 + 合成复用原则

六大程序设计原则 + 合成复用原则 六大程序设计原则 + 合成复用原则程序设计领域的设计模式的六大设计原则 + 合成复用原则(Composite Reuse Principle) ,都是一些很泛的思想(它们既可以指这个,也可以代指那个),无法生搬硬套,无法做到很具体的指导。我的建议是,有空多看几遍、 ......
原则 程序设计 程序

RTL设计的两点原则以及如何具体执行

## RTL设计的两点原则 1. 大道至简 2. 考虑物理后端的实现 ## 如何遵循原则去执行 ### 大道至简 1. 大道至简的意思是我们设计的电路,要保证功能正确性的同时,电路要尽可能简洁。 2. 大道至简的好处是,更少的资源,更低的功耗,更容易实现的高时钟频率。 3. 这就需要我们对各种微架构 ......
原则 RTL

java线程池七大参数(转)

转:https://blog.csdn.net/ye17186/article/details/89467919 从源码来看,线程池构造有七个参数,corePoolSize,maximumPoolSize,keepAliveTime,unit,workQueue,threadFactory,hand ......
线程 七大 参数 java

设计模式学习1 设计原则

# 设计原则 ## 1.开闭原则 **对扩展开放,修改关闭**。在程序需要扩展的时候,不能去修改原有代码,实现一个热插拔的效果。为了使程序的扩展性好,易于维护和升级 为了达到这样的效果,我们需要使用接口和抽象类 ## 2.里氏代换原则 **任何基类可以出现的地方,子类一定可以出现。**也就是子类继承 ......
设计模式 原则 模式

常用的七大排序算法

# 1. 七大排序算法简述 ## 1.1 选择排序 算法思想: 1. 进行n轮操作 2. 在某一轮中,选择未排序的一个最小数组元素,与右侧未排序的第一个数组元素交换 3. 交换完之后,相当于向右扩大已排序的数组范围。 4. 重复2,3.直至所有数组元素已排序 稳定性:**不稳定** 假设在某一轮数组 ......
算法 七大 常用

合成复用原则及设计模式概述

#### 合成复用原则 ##### 基本介绍 尽量使用合成或聚合方式,而不是使用继承。 ##### uml类图 ![](https://img2023.cnblogs.com/blog/2883613/202309/2883613-20230901214027810-569491626.png) 此 ......
设计模式 原则 模式

[读书笔记]架构设计原则

架构设计面向的是不确定性,需要面对多种可能性时进行选择。 > 选择的前提是知识和经验,知识是指有哪些技术、可用组件、实现思路等,这个决定了可选的范围。经验是对当前的业务、情形进行分析,能识别对当前的工作最有效的要素,能从选择空间里做出选择。 > > 多学习:扩大可选择的空间和范围 > 多实践、思考: ......
架构 原则 笔记

Single Responsibility Principle,SRP-单一职责原则

C#中的单一职责原则(Single Responsibility Principle,SRP)要求一个类应该只负责单一的职责。这意味着一个类应该只有一个引起它变化的原因。 遵循单一职责原则的好处包括: 提高代码的可维护性:一个类只负责一个职责,当需求变化时,只需要修改与该职责相关的代码,降低了变更对 ......

六大程序设计原则 + 合成复用原则

程序设计领域的`设计模式六大原则` + `合成复用原则`(Composite Reuse Principle) ,都是一些很**泛**的思想(既可以指这个,也可以代指那个),无法生搬硬套,无法做到很具体的指导。我的建议是,有空多看几遍,多思考看看怎么能运用上在实际项目中,在未来时保佑自己在设计程序时 ......
原则 程序设计 程序

开闭原则

#### 开闭原则 ##### 基本介绍 - 1.开闭原则(Open Close Principle)是编程中最基础,也最重要的原则。 - 2.一个软件实体如类,模块,和函数应该对扩展(增加)开放,对修改关闭。用抽象扩展结构,用实现扩展细节。 - 3.当软件需求变化时,尽量通过扩展软件实体的方式来实 ......
原则

设计原则

一、单一职责原则(SRP)二、开闭原则(OCP)对扩展开放,对修改关闭三、里氏替换原则(LSP)父类的属性和方法必须完全可以被继承,不会出现父类方法被子类使用出现不符合的情况四、依赖倒置原则(DIP)通过 抽象接口 来定义模块之间的依赖关系五、接口隔离原则(ISP) 拆接口,避免继承类 重复实现 接 ......
原则

里氏替换原则

#### 里氏替换原则 **OOP(Object Oriented Programming) 面向对象编程** ##### OO中的继承性的思考 - 1.继承包含这样一层含义,父类中凡是已经写好的方法,实际上就是设定规范。虽然不强制要求所有子类必须遵守规范(不重写方法),但是如果子类对这些方法,任意 ......
里氏 原则

依赖倒转原则详解

#### 依赖倒转原则 ##### 基本介绍 依赖倒转原则(Dependence Inversion Principle): - 1.高层模块,不要依赖底层模块,二者都应该依赖其抽象。 - 2.抽象不应该依赖细节,细节应该依赖抽象。 - 3.依赖倒转的核心思想是面向接口编程。 - 4.依赖倒转原则基 ......
原则

接口隔离原则

#### 接口隔离原则 ##### 介绍 客户端不要依赖不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上。 ##### 案例引入 A类,通过接口1依赖B类,C类通过依赖接口1依赖D类,A类只会用到1-3方法,C类只会使用到1,4,5方法。 ##### uml类图 ![](https:// ......
接口 原则

面向对象设计原则

前言 在面向对象的软件设计中,只有尽量降低各个模块之间的耦合度,才能提高代码的复用率,系统的可维护性、可扩展性才能提高。面向对象的软件设计中,有23种经典的设计模式,是一套前人代码设计经验的总结,如果把设计模式比作武功招式,那么设计原则就好比是内功心法。常用的设计原则有七个,本文将具体介绍单一职责原 ......
对象 原则

SQL索引建立原则和使用

今天遇到一个sql,where 中增加了一个条件,用时突然变成了4秒,系统里有两次使用此语句,点一下要等一会。 所以研究下索引。 原文链接:https://blog.csdn.net/qq_32911691/article/details/117321757 创建索引:create table [表 ......
索引 原则 SQL