首页
3D照片墙
统计
留言
Search
1
1.OAuth 的简单理解
115 阅读
2
多个拦截器的执行顺序
105 阅读
3
基于Annotation方式的声明式事务
102 阅读
4
6.设计模式汇总
101 阅读
5
Unity 依赖注入
98 阅读
Java
JDBC
Spring
Spring MVC
SpringBoot
SpringCloud
MybatisPlus
Mybatis
Maven
SpringSecurity
JVM
java注解与反射
Java JUC并发编程
SSM
.NET
IdentityServer4
EF
.Net Core
AbpVNext + DDD
.NET MVC Api
前端
Jquery&JavaScript
uniapp
VUE
Echars
Vue底层原理
Python
Django
软考笔记
软件设计师
1.计算机组成与体系结构
10.面向对象技术
11.UML类图建模
12.面向对象程序设计
13.数据结构
14.算法基础
16.知识产权标准化
17.程序设计语言
2.操作系统
3.数据库
4.数据库设计
5.计算机网络
6.信息安全
7.系统开发基础
8.项目管理
9.数据流图
架构设计
CQRS架构
DDD架构
数据库技术
SQL锁
SqlServer
Oracle 主从备份
Oracle RAC集群
Mysql
云原生/容器技术
kubernetes
Docker
数据结构与算法
常用中间件
Redis
RabbitMQ 消息队列
ElasticSearch
其他
PHP
OAuth 2.0
WebSocket
ArkTs Harmony 开发
运维
Search
标签搜索
排序算法
vue
算法
遍历
docker
线性
数组
dom
synchronized
数据库
xml语言
log4j
bigint
静态函数
静态方法
哈夫曼树
const
冒泡排序
商标设计
命令模式
Bi8bo
累计撰写
304
篇文章
累计收到
6
条评论
首页
栏目
Java
JDBC
Spring
Spring MVC
SpringBoot
SpringCloud
MybatisPlus
Mybatis
Maven
SpringSecurity
JVM
java注解与反射
Java JUC并发编程
SSM
.NET
IdentityServer4
EF
.Net Core
AbpVNext + DDD
.NET MVC Api
前端
Jquery&JavaScript
uniapp
VUE
Echars
Vue底层原理
Python
Django
软考笔记
软件设计师
1.计算机组成与体系结构
10.面向对象技术
11.UML类图建模
12.面向对象程序设计
13.数据结构
14.算法基础
16.知识产权标准化
17.程序设计语言
2.操作系统
3.数据库
4.数据库设计
5.计算机网络
6.信息安全
7.系统开发基础
8.项目管理
9.数据流图
架构设计
CQRS架构
DDD架构
数据库技术
SQL锁
SqlServer
Oracle 主从备份
Oracle RAC集群
Mysql
云原生/容器技术
kubernetes
Docker
数据结构与算法
常用中间件
Redis
RabbitMQ 消息队列
ElasticSearch
其他
PHP
OAuth 2.0
WebSocket
ArkTs Harmony 开发
运维
页面
3D照片墙
统计
留言
搜索到
84
篇与
的结果
2023-10-19
8.规范化理论(每次必考)
考点1:规范化理论基本概念 考点2:范式判断 考点3:模式分解 规范化理论基本概念 如学号(X)可以决定姓名(Y) X->Y 部分函数依赖 A部分决定C 传递函数依赖(冗余函数依赖) Amstrong 公理体系 候选键 例如:A --> B,A的入度为0,没有任何能指向A 题目 答案B 主属性与非主属性 定义:组成候选码的属性就是主属性,其它的就是非主属性。 范式判断 不到三范式多少无法避免以下问题 数据冗余 修改异常 插入异常 删除异常 第一范式(1NF):在关系模式R中,当且仅当所有域只包含原子值,即每个属性都是不可再分的数据项,则称关系模式R是第一范式。 第二范式(2NF):当且仅当关系模式R是第一范式(1NF),且每一个非主属性完全依赖候选键(没有不完全依赖)时,则称关系模式R是第二范式。(联合主键中不能有部分个字段能直接去找到某个数据,必须联合起来作为主键去找) 第三范式(3NF):当且仅当关系模式R是第二范式(2NF),且R中没有非主属性传递依赖于候选键时,则称关系模式R是第三范式。(主键要直接能找到数据,不能间接找到一个中间数据在拿这个数据去找目标数据,不允许传递依赖) 候选键是单属性,至少满足第二范式 如果没有非主属性,至少满足第三范式 模式分解 推导得出A->C ,任然保持函数依赖 无损分解 表格法 只要有一排全为√,说明无损分解 保持函数依赖:全部的依赖分解后都能找到 https://blog.csdn.net/qq_41273999/article/details/138003528?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ECtr-1-138003528-blog-142306100.235%5Ev43%5Epc_blog_bottom_relevance_base7&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ECtr-1-138003528-blog-142306100.235%5Ev43%5Epc_blog_bottom_relevance_base7&utm_relevant_index=2
2023年10月19日
12 阅读
0 评论
79 点赞
2023-10-05
3.进程调度(核心考点)
https://baijiahao.baidu.com/s?id=1693084222078189089&wfr=spider&for=pc(**进程同步与互斥机制**) 考点1:PV操作的概念 互斥:如千军万马过独木桥 间接制约关系 同步:速度有差异,在一定情况停下等待。 直接制约关系 ▲临界资源:诸进程间需要互斥方式对其进行共享的资源。 (进程中访问临界资源的那段代码称为临界区) 类似lock(){}代码块 PV操作控制程序的并发过程,P(s)加锁,V(s)解锁 注意:**P操作是小于0才进入阻塞队列,因为是先减,V操作是等于0就通知阻塞队列,证明里面有1个(-1)在等待** 考点2:信号量与PV操作 互斥模型 在同一个进程中 P(S)和V(S)一定成对存在,原子性 S互斥信号量(相当于被锁的资源有多少S就是多少) 同步模型 在多个进程中 PV操作没有固定的顺序,可以先V再P 互斥与同步模型结合 考点3:前趋图与PV操作 【软考】操作系统 - 进程管理(PV操作与前趋图)_前趋图和pv操作-CSDN博客
2023年10月05日
83 阅读
0 评论
74 点赞
2023-09-27
3.软件开发模型(必考)
考点1:瀑布模型与V模型(考的最多) 考点2:演化模型(原型模型、螺旋模型) 考点3:增量模型 考点4:喷泉模型 考点5:统一过程UP 考点6:敏捷方法(考的较多) 考点:判断适用场景和特点 瀑布模型与V模型 结构化开发思想(适用需求明确),文档作为驱动 V模型 需求分析阶段考虑验收和系统测试 概要设计阶段考虑集成测试 详细设计阶段考虑单元测试 强调测试贯穿始终 原型模型 正确的需求定义是系统成功的关键。但是许多用户在开始时,往往不能准确地描述他们的需要,软件开发人员需要反复地和用户交流信息,才能全面、准确地了解用户的需求。在用户实际使用了目标系统以后,通过对系统的执行、评价,使用户更加明确对系统的需求。此时用户常常会改变原来的某些想法,对系统提出新的需求,以便使系统更加符合他们的实际需要。 原型模型是在开发真实系统之前,构造一个原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求;第二步则在第一步的基础上开发客户满意的软件产品。原型模型如图 (1) 原型模型的优点。 原型方法打破了瀑布模型方法的僵化,让开发过程之间和开发过程中的主客体之间提前融合。原型模型缩短了开发周期,加快了工程进度,降低了工程成本。 (2) 原型模型的缺点。 原型模型所选用的开发技术和工具不一定符合主流的发展,快速建立起来的系统结构加上连续修改可能会导致产品质量低下。 (3) 适用范围。 原型模型适合于预先不能确切定义需求的软件系统的开发。 演化模型:演化模型是迭代的过程模型,使得软件开发人员能够**逐步开发出更完整的软件版本。演化模型特别适用于对软件需求缺乏准确认识的情况**。 适用于系统规模不是很大 螺旋模型 提到风险一般考虑螺旋模型 瀑布模型和演化模型结合,加入了风险分析。特别适用于庞大、复杂并且具有高风险的系统。 增量模型 第1个增量往往是核心产品**。将需求分段为一系列增量产品,每一增量可以分别开发。** 缺点是难以将需求划分为每个阶段的增量 与迭代模型的区别是,迭代模型第一版是不完整产品 喷泉模型 开发活动无明显界限,**迭代无间隙** 统一过程UP 出现UP/RUP都是统一过程 用例驱动,架构为中心,有迭代和增量的思想在内 敏捷方法 总体目标是通过“尽可能早地、持续地对有价值的软件的交付”使客户满意。适用于:“**小步快跑”的思想,适合小项目小团队**。 极限编程XP 考的多的两个 极限编程XP 并列争球法(SCRUM)**强调分组并行**
2023年09月27日
42 阅读
0 评论
95 点赞
2023-09-08
1.进度管理
考点1:Gantt图 考点2:PERT图**(必考)** Gantt图 优点: Gantt图能够清晰地描述每个任务从何时开始,到何时结束,任务的进程情况以及各个任务之间的并行关系。 缺点: Gantt图不能清晰地反映出个任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分。 细线预估时间,粗线实际时间 PERT图**(必考)** 优点: PERT图**不仅给出了每个任务的开始时间、结束时间和完成该任务所需的时间,还给出了任务之间的关系,即哪些任务完成之后才能开始另外的一些任务,以及如期完成整个工程的关键路径。图中的松弛时间**则反映了某些任务是可以推迟其开始时间或延长其所需完成的时间。 缺点: PERT图不能反映任务之间的并行关系。 关键路径法 关键路径**:从开始到结束,需要时间最长的路径。** 项目工期:完成项目的最少时间,注意由关键路径即最长路径决定。 总时差((松弛时间):在不延误总工期的前提下,该活动的机动时间。活动的总时差等于该活动最迟完成时间与最早完成时间之差,或该活动最迟开始时间与最早开始时间之差。 单代号网络图 (PDM) 最早开始时间由前驱活动的最早完成时间决定,有多个前驱节点的话取最大值的那个 最晚完成时间由后继活动的最晚开始时间决定,有多个后继节点的话取最小值的那个 总时差为0的是关键路径上图 A C D G H为 路径 双代号网络图 (ADM) 节点为里程碑,A-G为活动
2023年09月08日
66 阅读
0 评论
47 点赞
2023-08-17
1.1 二进制,十进制,十六进制转换
原文 https://zhuanlan.zhihu.com/p/481513009 思前想后: 例 接下来我们细致理解进制之间的转换 一:2进制转换为16进制: 把二进制数从低位到高位每4位组成一组,直接用16进制数来表示即可,例如: 0011 0101 1011 1111 3 5 B F 这里很好拼凑,1,2,4,8权相对应的位置只要是1,咱们加起来就可以了 第一个末尾俩1(1+2=3),接着(1+4=5),接着(1+2+8=B)最后(1+2+4+8=F),记住 1,2,4,8的顺序就好了 所以 0011010110111111B=35BFH 注意:十六进制数以H为后缀,十进制D,八进制O,二进制B,这里的末尾B和H是强调是什么进制的) 二:16进制转为2进制 把16进制数中每一位用4为二进制数来表示(不足四位用0补充),即可得到相对应的二进制数,例如: A 1 9 C 1010 0001 1001 1100 同上(在1,2,4,8中),A=2+8,所以二进制数中从右到左第2位和第四位是1,即1010 9=1+8,所以在二进制数从右到左第一位和第四位是1,即1001 三:2进制转换为10进制数 各位二进制数码乘以与其对应的权之和即为与该二进制数对应的十进制数:例如 1011100.10111B = 2^6+2^4+2^3+2^2+2^-1+2^-3+2^-4+2^-5 = 92.71875D 四:10进制转换为2进制 把要转换的十进制数的整数部分不断除以2,并计下余数,直到商为0为止,例如: 整数N=117D 117/2=58余1(a0=1) 58/2=29余0 (a1=0) 29/2=14余1(a2=1) 14/2=7 余0 (a3=0) 7/2=3余1 (a4=1) 3/2=1余1(a5=1) 1/2=0余1(a6=1) 用短除法更快一点 即N=117D=1110101B 对于被转换的十进制数的小数部分则应不断乘以2,并计下其整数部分,直到结果的小数部分为0为止 例如小数 N=0.8125D 0.8125*2=1.625 (b1=1) 0.625*2=1.25 (b2=1) 0.25*2=0.5 (b3=0) 0.5*2=1.0 (b4=1) 所以N=0.8125D=0.1101B 五:16进制数转换为10进制数 各位十六进制数与其对应权值的乘积之和即为相应的十进制数,例如: N=BF3CH =1116^3+1516^2+316^1+1216^0 =48956D 六:10进制转换为16进制 1:可以先转换为2进制再转换为16进制 2:除法:把要转换的十进制数的整数部分不断除以16,并记下余数,直到商为0为止:例如: N=48956D 48956/16 = 3059 余12(a0=12) 3059/16=191 余3 (a1=3) 191/16=11 余15 (a2=15) 11/16 = 0 余11 (a3=11) 所以:N=48956D = BF3CH 原码,补码,反码 原码:最高位表示符号(正数用0,负数用1),其它位表示数值位,称为有符号数的原码表示法,例如: N=45=00101101B 【N】原码=0 0101101B M=-45 【M】原码=1 0101101B 反码:正数的反码与原码相同,符号位用0表示,数值位值不变。负数的反码符号位用1表示,数值位为原码数值为按位取反形成,即0变1,1变0,例如: N=45=00101101B 【N】反码=0 0101101B M=-45 【M】反码=1 1010010B 补码:正数的补码与原码相同,即符号位用0表示,数值位值不变。负数的补码为反码加1形成,例如: N=45=00101101B 【N】补码=00101101B M=-45 【M】补码=11010011B 例如:11000111=-57计算方式: 最高位为1,先加负号 接着取反码+1=00111001=57 即-57 二进制加法 在这个例子当中 25 的原码:00011001 -25的补码为:11100111 32 的原码:00100000 -32的补码为:11100000 即-25等于25的反码+1 最终的结果为 11000111即-57,将其反码加1之后转化为十进制为57(验证了结果的正确性) 在这里11000111最前面应该还有个1,在这里系统将其抛弃了(但不是彻底抛弃,这里的进位被PSW寄存器里记录了,去掉他并不影响结果) 补码的表数范围 N位二进制数能够表示的 无符号整数范围:0 ~ 2^n - 1 如8位:0~255 (8个位都表示数值了,最大2^8-1) N位二进制数能够表示的 有符号整数范围:-2^(n-1) ~ 2^(n-1) - 1 如8位:-128~127 (因为最高位0,1表示正负,其余7位才表示数值,最大2^7-1) 计算11111111转换为十进制数: 无符号:2^8-1=255 有符号:最高位是1,先确定是负数 接着取反码:0000 0000 接着+1 0000 0001 = 1 加上确定是负数,最终结果为-1 所以无符号时为255,有符号时为-1
2023年08月17日
32 阅读
0 评论
95 点赞
1
...
8
9
10
...
17