Java开发遇到的《简称》

本文涵盖软件开发中常见的术语,如CRUD、RPC、OOM、OOP等,解析编程原则如SRP、OCP、LSP、DIP、ISP,并介绍AQS、FIFO、DRY等技术概念,以及单元测试的AIR准则和BCDE测试策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CRUD
指在做计算处理时的增加(Create)、检索(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写。crud主要被用在描述软件系统中数据库或者持久层的基本操作功能。

RPC
(Remote Procedure Call)远程过程调用,简单的理解是一个节点请求另一个节点提供的服务。

OOM,
(Out Of Memory),内存溢出。

OOP
(Object Oriented Programming),原来就是面向对象的编程啊,还有OOD(面向对象的设计),OOA(面向对象的分析)。

SRP
(Single Responsibility Principle)单一职责原则,类的功能要单一,不能包罗万象,跟杂货铺似的。

OCP
(Open-Close Principle)开放封闭原则,一个模块对于拓展是开放的,对于修改是封闭的,想要增加功能热烈欢迎,想要修改,哼,一万个不乐意。

LSP
(the Liskov Substitution Principle LSP)里式替换原则,子类可以替换父类出现在父类能够出现的任何地方。

DIP
(the Dependency Inversion Principle DIP)依赖倒置原则,高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。抽象不应该依赖于具体实现,具体实现应该依赖于抽象。

ISP
(the Interface Segregation Principle ISP)接口分离原则,设计时采用多个与特定客户类有关的接口比采用一个通用的接口要好。

AQS
(Abstract Queued Synchronizer),它提供了一种实现阻塞锁和一系列依赖FIFO等待队列的同步器的框架,ReentrantLock、Semaphore、CountDownLatch、CyclicBarrier等并发类均是基于AQS来实现的,具体用法是通过继承AQS实现其模板方法,然后将子类作为同步组件的内部类。

FIFO
(First Input First Output) 简单说就是指先进先出。由于微电子技术的飞速发展,新一代FIFO芯片容量越来越大,体积越来越小,价格越来越便宜。作为一种新型大规模集成电路,FIFO芯片以其灵活、方便、高效的特性,逐渐在高速数据采集、高速数据处理、高速数据传输以及多机处理系统中得到越来越广泛的应用。

DRY
(Don’t Repeat Yourself)避免出现重复的代码。

AIR
Automatic(自动化)、Independent(独立性)、Repeatable(可重复)。

Automatic(自动化)
单元测试应该是全自动执行的,并且非交互式的。测试用例通常是被定期执行的,执行过程必须完全自动化才有意义。输出结果需要人工检查的测试不是一个好的单元测试。单元 测试中不准使用 System.out 来进行人肉验证,必须使用 assert 来验证。

Independent(独立性)
保持单元测试的独立性。为了保证单元测试稳定可靠且便于维护,单元测试用例之间决不能互相调用,也不能依赖执行的先后次序。

Repeatable(可重复)
单元测试是可以重复执行的,不能受到外界环境的影响。因为单元测试通常会被放到持续集成中,每次有代码 check in时单元测试都会被执行。如果单测对外部环境(网络、服务、中间件等)有依赖,容易导致持续集成机制的不可用。

BCDE
B:Border,边界值测试,包括循环边界、特殊取值、特殊时间点、数据顺序等。
C:Correct,正确的输入,并得到预期的结果。
D:Design,与设计文档相结合,来编写单元测试。
E:Error,强制错误信息输入(如:非法数据、异常流程、业务允许外等),并得到预期的结果。

CSRF
(Cross-site request forgery)跨站请求伪造是一类常见编程漏洞。对于存在 CSRF 漏洞的应用
/网站,攻击者可以事先构造好 URL,只要受害者用户一访问,后台便在用户不知情的情况下对数据库中
用户参数进行相应修改。

本文摘自《百度百科》,《知乎》,《阿里开发规约》,《简书》等知识库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值