软件设计师 知识点拾遗 2022年下半年

软件设计师 知识点拾遗 2022年下半年

这次错了25个,略有进步~

上午题

  • DRAM:动态随机存取存储器,它使用电容存储信息,但由于电容会自然放电,因此需要定期刷新来保持数据。此外,DRAM也是内存的主要介质。
  • EPROM:可擦除可编程只读存储器,通过浮栅晶体管存储信息,无需刷新,但需紫外线擦除。
  • SRAM:静态随机存取存储器,使用触发器电路存储信息,无需刷新,速度快但成本高。此外,SRAM也是Cache的主要介质。
  • EEPROM:电可擦除可编程只读存储器,通过电子擦写存储信息,无需刷新,可逐字节修改。

算法 类型 密钥长度(同等安全) 主要应用场景
RSA 非对称 2048+ 位 HTTPS 证书、数字签名、X.509
DES 对称 56 位(不安全) 历史遗留系统
AES 对称 128/192/256 位 文件加密、通信协议
ECC 非对称 256 位 SM2 证书、区块链

  三层C/S结构具体指的是表示层、功能层和数据层,这三层相互独立,可以分模块开发。此外,三层C/S结构聚友语言无关性,即各层可使用不同的开发语言,仅需通过接口进行通信。


  这个题做错的原因还是具体的概念有些记不清了,在这里来回顾一下:

  • 无直接耦合:两个模块之间没有直接的关系。
  • 数据耦合:两个模块之间存在值传递。
  • 标记耦合:两个模块之间存在数据结构的传递。
  • 控制耦合:一个模块调用另一个模块中的某一功能。
  • 外部耦合:模块间通过软件之外的环境连接。
  • 公共耦合:多个模块共享全局数据
  • 内容耦合:一个模块直接使用另一个模块的内部数据,或者一个模块通过非正常入口转入另一个模块内部。

  可以再顺便复习一下几种内聚的定义:

  • 偶然内聚:一个模块内的各个元素之间没有任何联系。
  • 逻辑内聚:一个模块可以执行若干个逻辑上相似的功能。
  • 时间内聚:模块中的任务或操作因为​​在同一时间段内执行​​而被组合在一起,但这些操作之间​​没有功能或逻辑上的直接关联​​。
  • 过程内聚:一个模块能够完成多个任务,且这些任务必须按照指定的过程执行。
  • 通信内聚:模块内所有的元素都在同一个数据结构上操作。
  • 顺序内聚:一个模块内的各个处理元素都密切相关于完成一个功能且必须顺序执行。
  • 功能内聚:一个模块内的所有元素都密切相关于完成一个功能,缺一不可。

  • 冗余:同一数据在表中​​重复存储多次​​,浪费空间且易引发数据不一致。在本题中同一岗位的薪资会被重复存储。
  • 插入异常:无法插入某些合法数据,除非同时插入无关数据。在本题中若新增岗位时暂无教师,则薪资信息无法单独插入。
  • 删除异常:删除某些数据时,​​意外丢失其他信息​。在本题中如果删除某岗位的最后一名教师,则对应的薪资信息会丢失。

  这题也是记不清了,下面区分一下邻接矩阵和关联矩阵:

  • 邻接矩阵:设G为n阶图,V={v1v_1, v2v_2, …, vnv_n},邻接矩阵A(G) = (aija_{ij}),其中:

aij={lvivj之间的边数0vivj不邻接a_{ij}=\left\{ \begin{array}{l} l\text{,}v_i\text{与}v_j\text{之间的边数}\\ 0\text{,}v_i\text{与}v_j\text{不邻接}\\ \end{array} \right.

  不难发现邻接矩阵是n个点之间的关系,故其矩阵的大小为n2n^2

  • 关联矩阵:对应的,关联矩阵定义的是一个具有n个点和m条边的图的内容,故其矩阵大小为n×mn×m

记不清+1…,一棵B-树应该具有以下特点:

  • 树中的每个结点至多有m颗子树
  • 若根节点不是叶子结点,则至少有两颗子树。
  • 除根之外的所有非叶子结点至少有m/2\lceil m/2 \rceil棵子树。
  • 所有叶子结点都出现再同一层次上
  • B-树中的每个结点中的关键字都是有序的


VLAN是在​​二层网络(数据链路层)​​中隔离广播域,通过插入​​802.1Q Tag​​标记不同VLAN的帧来实现的。


软件设计师 知识点拾遗 2022年下半年
http://example.com/2025/05/14/note41/
作者
谢斐
发布于
2025年5月14日
许可协议