中级软件设计师知识点总结

  • 上午
    • 1. 计算机系统基础
    • 2. 操作系统
    • 3. 数据库基础
    • 4. 程序语言基础
    • 5. 软件工程基础知识与开发方法(结构化与面对对象)
    • 6. 网络与信息安全基础知识
  • 下午
    • 数据流图
      • 考察内容
      • 真题简答总结
    • UML图设计/设计模式
      • 真题简答总结
    • ER图
  • 真题错题总结
    • 2007-上半年-上午

上午

1. 计算机系统基础

  1. 在程序执行过程中,Cache与驻村的地址映射是由硬件自动完成的。
  2. 计算机系统的主存主要是由DRAM构成的;Cache是SRAM。

DRAM:动态随机存储器,最为常见的系统内存;
SRAM:是一种具有静止存取功能的内存,不需要刷新电路即能保存它的内部存储数据,用来作为高速缓存存储器,即Cache;
EEPROM:一般即插即用(Plug&Play),常用在接口卡中,用来存放硬件设置数据。
CPU内部:通用寄存器、专用寄存器、控制寄存器。

  1. 计算机运行过程中,CPU需要与外设进行数据交换。采用中断方式和DMA方式控制技术时,CPU与外设可并行工作。

程序查询方式是按顺序执行的方式,由CPU全程控制,不能实现外设与CPU并行工作,且占用CPU时间最多;
在外设做好数据传送之前,CPU可以做自己的事情,发出中断请求之后,CPU响应才会控制器数据传输过程,能在一定程度上实现CPU和外设并行;
DMA方式由DMA控制器向CPU申请总线的控制权,而获得CPU总线控制权之后,由DMA代替CPU控制数据传输过程;
无条件传送、中断、程序查询,通过CPU执行程序实现数据交换,DMA不用,速度最快。

  1. 运算器&控制器

累加寄存器AC:存放算术逻辑运算部件ALU运算结果信息;
程序计数器PC:存放下一条指令;
指令寄存器IR:保存当前正在执行的指令;
地址寄存器AR:保存当前CPU所要访问的内存单元地址。

  1. 指令和数据都存在内存中,传统计算机CPU在执行过程中根据指令周期的不同阶段来区分是数据还是指令,取指周期取出的是指令,执行周期取出的是数据。
  2. 指令周期>时钟周期
  3. VLIW超长指令字简称,是一种非常长的指令组合,它吧许多条指令连接在一起。
  4. RISC、CISC
  5. Cache中的地址映像方法

全相联映像:主存的任意一块可以映射到Cache中的任意一块;地址变换机制复杂,速度慢成本高。
直接映像:主存的块与Cache中块的关系是固定的;地址变换简单,速度快,不灵活,块冲突率高,Cache空间得不到利用。
组相联映像:前两种方法的折中,组间直接映像,组内全相联映像。

  1. 总线

并行总线:适合近距离高速数据传输;
串行总线:适合长距离数据传输;
专用总线:与连接设备实现最佳匹配。
在单总线结构中,CPU与主存之间、CPU与I/O设备之间、I/O设备之间与主存之间、各种设备之间,都通过系统组总线交换信息,其优点为控制简单,扩充方便,缺点是这种结构只能分工工作,使总体数据传输的效率和速度受到了限制。

  1. 存储设备访问顺序:通用寄存器>Cache>内存>硬盘
  2. 异步流水线(也称乱序流水线、无序流水线、错序流水线)流水线输出端任务流出的顺序与输入端任务流入的顺序可以不同,允许后进入流水线的任务先完成。

CPU层次的东西,不会对上层产生结果性的影响,但乱序执行与分支预测会对程序的效率产生影响。

  1. 为了解决对存储器要求容量大、速度快、成本低三者之间的矛盾,目前通常采用多级存储器体系结构即采用高速缓冲存储器,主存储器和外存储器。

CPU存取速度:通用寄存器>Cache>内存>硬盘(外存)。

高速缓冲存储器:高速存取指令和数据存取速度快,但存储容量小;
主存储器:存放计算机运行期间的大量程序和数据,速度较快,存储容量不大;
外存储器:存放系统程序和大型数据文件及数据库存储,容量大、成本低。

  1. 原码反码补码移码表示定点数范围
码制 定点整数 定点小数
原码 −(2n−1−1)-\left( 2^{n-1}-1 \right)−(2n−1−1) ~+(2n−1−1)+\left( 2^{n-1}-1 \right)+(2n−1−1) −(1−2−(n−1))-\left( 1-2^{-\left( n-1 \right)} \right)−(1−2−(n−1)) ~+(1−2−(n−1))+\left( 1-2^{-\left( n-1 \right)} \right)+(1−2−(n−1))
反码 −(2n−1−1)-\left( 2^{n-1}-1 \right)−(2n−1−1) ~+(2n−1−1)+\left( 2^{n-1}-1 \right)+(2n−1−1) −(1−2−(n−1))-\left( 1-2^{-\left( n-1 \right)} \right)−(1−2−(n−1)) ~+(1−2−(n−1))+\left( 1-2^{-\left( n-1 \right)} \right)+(1−2−(n−1))
补码 −2n−1-2^{n-1}−2n−1~+(2n−1−1)+\left( 2^{n-1}-1 \right)+(2n−1−1) −1-1−1~+(1−2−(n−1))+\left( 1-2^{-\left( n-1 \right)} \right)+(1−2−(n−1))
移码 −2n−1-2^{n-1}−2n−1~+(2n−1−1)+\left( 2^{n-1}-1 \right)+(2n−1−1) −1-1−1~+(1−2−(n−1))+\left( 1-2^{-\left( n-1 \right)} \right)+(1−2−(n−1))

2. 操作系统

  1. 文件名应该从根目录开始。
  2. 设计操作系统的时候,不需要考虑的问题是语言编译器的设计实现。

操作系统的作用:对系统软件资源实施管理的一组程序,用户与计算机之间的接口。

  1. 嵌入式系统初始化过程中主要有三个环节,按照自底向上,从硬件到软件的次序依次为片级初始化,板级初始化,系统初始化。系统初始化的主要任务是以软件初始化为主,主要进行操作系统的初始化。
  2. 用户双击一个文件名时,windows系统通过建立的文件关联来。决定使用什么程序打开。
  3. 实时操作系统主要用于有实时要求的过程控制等领域。实时系统对于来自外部的事件,必须在被控对象规定的时间内做出及时的响应,并对其进行处理。

实时操作系统
在规定时间内系统完成操作软时只要按照任务的优先级,尽可能快的完成操作即可

  1. 死锁

共享锁(S锁):又称读锁,事务T对A加了S锁,其它事务只能对A加S,而不能加X直到T释放A上的S锁。
排他锁(X锁):又称写锁,事务T对A加了X锁,其它事务不能对A加任何锁,直到T释放A上的X锁。

3. 数据库基础

  1. JDBC(Java database connectivity,Java数据库连接)是一种用于执行SQL语句的API。可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。常用于Web开发。

  2. 查询条件

where:是针对单条记录的判断条件
Having:是针对分组之后的判断条件
Distinct:去掉重复

  1. 数据库管理系统DBMS:保证数据库的安全性和完整性;数据库管理员DBA:为不同用户授权,为了保证数据安全性。
  2. 关系代数

笛卡尔积:×,属性相加,记录相乘
投影:π,选列
选择:σ,选行
连接:⋈,相同属性只保留一个(自然连接,等值连接)

  1. 三级模式二级映像

  2. 分布式数据系统中有分片透明、复制透明、位置透明、逻辑透明。

分片透明:用户不知道关系数据是如何分片的(逻辑上访问的表是如何分块的)
复制透明:用户不用关系数据库在网络中各个节点的复制情况
位置透明:用户不知道操作的数据放在何处
逻辑透明:最低层次的透明性,用户不用关心局部DBMS支持哪种数据模型,使用哪种操纵语言

  1. 遗传算法模拟生物进化的三个基本过程“繁殖(选择)→交叉(重组)→变异(突变)

在适应函数选择不当的条件下,可能收敛于局部最优,而不能达到全局最优

4. 程序语言基础

  1. 中间代码(中间语言、中间表示)常用形式:后缀式、三元式、四元式、树形式。

特性:生成时可不考虑机器的特性,并且生成中间代码的编译程序相对容易;
由于中间代码与具体机器无关,能将生成中间代码的编译程序方便移植到其他机器上,只需为其开发一个解释器或将中间代码翻译成目标指令,就能在目标机上运行;
在中间代码上更便于做优化处理,某些优化方法在中间代码上比在汇编机器代码上更容易实施。

  1. 在高级语言程序中常见命名对象:变量、函数、数据类型;关键字和注释不能作为标示符给对象命名。
  2. 程序设计语言中的大多数语法现象,可用上下文无关文法描述。
  3. 编译过程:词法分析,语法分析,语义分析,中间代码生成、代码优化、目标代码生成6个阶段。

词法分析:检查单个词是否正确
语法分析:识别判断程序语句形式是否正确
语义分析:上下文性质的审查、进行类型审查

  1. 通过编译,存在死循环——动态语义错误,编译能功过,符合词法、语法、静态语义。
  2. 脚本语言为了缩短传统的编写——编译——链接——运行过程。不需要编译,可直接用。

脚本语言可使用变量和函数,标记语言常用于描述格式化和链接;
脚本语言采用解释方式实现,编译型语言,执行效率更高;
与编译器相比,解释器参与运行控制,程序执行速度慢。

  1. 移进——规约分析法:自底向上。自顶向下:递归下降分析法,预测分析法。
  2. 变量具有左值和右值,在程序运行过程中,局部变量右值可改变。
  3. C程序

代码区:存放函数体的二进制代码
栈区:编译器自动分配释放,存放函数的参数值、局部变量的值;
堆区:程序员分配释放,若程序员不释放程序结束的可由操作系统回收
静态数据区:内存在程序启动时再分配,程序开始执行,被初始化,所分配的内存在程序整个运行期间,都存在如全局变量、static变量

  1. 编译过程中分配寄存器在目标代码生成阶段.

此时考虑影响目标代码速度的三个问题:

  • 如何生成较短目标代码?
  • 如何充分利用计算机中的计算器,减少访问存储单元次数
  • 如何充分利用计算机指令系统的特点,提高目标代码质量
  1. Fortran:科学计算
    Pascal:为教学开发,表达能力强
    Prolog:逻辑推理

5. 软件工程基础知识与开发方法(结构化与面对对象)

  1. DFD:数据流图,ERD:实体关系图
  2. 配置管理:版本控制、变更管理、配置状态报告(过程支持)
  3. 极限编程XP:解决代码质量低;由价值观、原则、实践、行为组成

12个最佳时间:计划游戏、小型发布、隐喻、简单设计、测试先行、重构、结对编程、集体代码所有制、持续集成、每周工作40小时、现场客户、编码标准
水晶法:每一个不同的项目都需要一套不同的策略、约定和方法论
并列争球法:迭代法,把每段时间(30天)一次的迭代成为一个冲刺,并按需求的优先级来实现产品,多个自组织和自治的小组并行的递增实现产品

  1. 成本估算时COCOMOⅡ方法以规模作为成本的主要因素,考虑多个成本驱动因子。该方法包括三个阶段性模型,即组装模型、早期设计阶段模型、体系结构阶段模型。

COCOMO基本:静态单变量
COCOMO中级:用Loc为自变量的函数计算,软件开发工作量的基础
COCOMO详细:中级基础之上考虑分析、设计

  1. 计算机系系统的可靠性、可用性、可维护性。

可靠性:给定条件和时间间隔内,无失效运作的概率。MTTF/(1+MTTF)MTTF/(1+MTTF)MTTF/(1+MTTF)来度量,其中MTTFMTTFMTTF为平均无故障时间
可靠性:给定时间点上,能按规格说明正确运作的概率。MTBF/(1+MTBF)MTBF/(1+MTBF)MTBF/(1+MTBF)来度量,其中MTBFMTBFMTBF为平均失效间隔时间
可维护性:给定使用条件,在规定时间间隔内,使用规定的过程和资源完成维护活动的概率。1/(1+MTTR)1/(1+MTTR)1/(1+MTTR)来度量,其中MTBFMTBFMTBF为平均修复时间

  1. 软件开发模型

结构化方法:适合数据处理领域,不适合大规模、特别负责的项目,难适应需求变化
Jackson:适合小规模项目,时序特点较强的系统
原型化方法:用户需求不清,小规模
面对对象方法:用户需求经常变化,规模复杂的项目
瀑布模型:面向过程
原型模型、螺旋模型:演化模型、是迭代的过程模型
喷泉模型:面向对象

  1. 逆向工程工具属于软件维护工具。
  2. 软件工程三要素:方法、工具、过程。
  3. 在概要设计阶段选择适合的解决方案,将系统分为若干子系统,建立整个系统的体系结构。

控制流结构:规定了处理模块与处理模块之间的流程关系,检查处理模块之间的控制转移关系与形式
数据流结构:规定了数据模块是如何被处理模块进行加工的流程结构的对应关系,检查处理模块与数据模块之间的对应关系
模块结构与功能结构之间的对应关系:功能结构与控制流结构的对应关系;功能结构与数据结构结构的对应关系;每个模块的定义。

  1. 代码行数是度量软件复杂性的一个主要参数.
  2. 统一过程UP的基本特征是,用例和风险驱动,以架构为中心,受控的迭代式增量开发。

UP的4个阶段:

  • 起始阶段:建立项目的范围和版本,确定项目目标的可行性和稳定性,提交结果包括需求和用例
  • 进化阶段:对问题与进行分析,建立系统需求和架构,确定实现的可行性和稳定性,提交结果包括系统架构、问题领域、修改后的需求及项目开发计划等相关文档
  • 构建阶段:增量式开发,可以交付给用户的软件产品
  • 移交阶段:将软件产品交付给用户

迭代:计划、分析、设计、构造、集成、测试、内部和外部开发

  1. 软件质量评审

软件规格说明是否合乎用户的要求及总体设计思想和方针是否正确
可靠性,即避免输入异常,硬件或软件失效产生的失效
密保措施实现情况
操作特性实施情况
性能实现情况
软件是否具有可修改性,可扩展性,可交互性,可移植性
是否具有可测试性
是否具有复用性

  1. 软件性能

可维护性包括:易分析性,易改变性、稳定性,易测试性
维护类型:改正性维护25%,适应性维护20%,完善性维护50%,预防性维护5%
功能性:适合性,准确性,或用性,依从性,安全性
可靠性:成熟性,容错性,易恢复性
应用性:易理解性,易学性,易操作性
可移植性:适应性、易安装性、一致性、易替换性

  1. 仓库风格包括数据库系统,黑板系统,超文本系统。

优点:

  • 具有解决问题的多方发性
  • 支持可更改性和可维护性
  • 有可重用的知识源
  • 支持容错性和健壮性
  1. 子系统结构设计确定划分后的子系统规模,并画出规模的结构图。

过程中需考虑:

  • 每个子系统如何划分成多个模块
  • 如何确定子系统之间,模块之间传送的数据及其调用关系
  • 如何评价并改进模块结构的质量
  • 如何从数据流图导出模块结构图?
  1. 数据流图中某个加工的一组动作,依赖于多个逻辑条件的取值,则用NS盒图能够清楚地表达复杂条件组合与应做的动作之间的对应关系。
  2. 自底向上集成

优点

  • 对底层组件行为较早验证;
  • 工作最初可以并行集成,比自顶向下效率高;
  • 减少了桩的工作量;
  • 支持故障隔离

缺点

  • 驱动的开发的工作量大;
  • 对高层的验证被推迟,
  • 设计上的错误不能及时发现
  1. 数据流图中的守恒加工原则对同一个加工来说,输入与输出的名字必须相同;对于每个加工必须有输入输出数据流。

加工规格说明主要目的是表达做什么而不是怎么做

  1. 单元测试链接测试、错误处理测试、路径测试、局部数据结构测试、模块接口测试。

  2. 划分模块原则:模块大小要合适;扇入扇出要合理;深度和宽度适当。

  3. 结构化设计

体系结构设计:定义软件主要结构元素及其关系
数据设计:根据ER图确定文件系统结构及数据库结构
接口设计
过程设计:各组成部分内的算法及内部数据结构,并选定某种过程的表达形式来描述各种算法

  1. 冗余技术(储备技术)

冗余附加条件:

  • 冗余备份程序的存储及调用
  • 实现纠错检测及恢复的程序
  • 为实现容错软件所需的固化程序
  1. 模块结构图中的模块类型

传入:从下属模块取数据,处理,传给上级模块
传出:从上级模块取数据,处理。传给下属模块
变换:(加工)从上级模块取数据,转换行式再传回上级
协调:对所有下属模块进行协调管理

  1. 甘特图

优点:能清晰描述每一个任务从何时开始,何时结束及并行性
缺点:不能反映任务间的依赖关系,难以确定整个项目关键所在,也不能反应计划中有潜力的部分

6. 网络与信息安全基础知识

  1. HTTPS和HTTP的区别:

HTTPS要到CA申请证书,一般免费较少,需要缴费
HTTP是文本传输协议,信息文明传输
HTTPS是具有安全性的SSL加密传输协议
连接使用端口不同,HTTP为80,HTTPS为443
连接方式不同, HTTP连接简单是无状态的,HTTPS协议是由SSL+HTTP协议构建的,可进行加密传输、身份认证的网络协议比HTTP安全

  1. 攻击

主动攻击拒绝服务攻击DOS,分布式拒绝攻击DDOS,信息篡改,资源使用,欺骗,伪装,重放
被动攻击只获取、不修改信息;系统干涉、窃听、流量分析、破解弱加密的数据流

  1. TCP和UDP的区别:

TCP面向连接,UDP无连接;
TCP提供更好的服务,传输的数据无差错、不丢失、不重复,且按需到达;UDP尽最大努力交付,即不保证可靠交付
TCP面向字节流;UDP面向报文,无拥塞控制,出现拥塞不会使主发送率下降
TCP连接只可是点到点的;UDP支持1V1、1VN、NV1、NVN的交互通信
TCP的逻辑通信信道是双全双工的可靠信道;UDP则不可靠信道,开销较小
TCP是流量控制器,采用可变大小的滑动窗口

  1. TCP/IP监测网络故障

ping 172.0.0.1 检查TCP/IP协议栈是否正常
ping 本地IP 检查网卡是否正常工作
ping 网关地址 检查和网关的连接性
ping 远程网站 检查远程连接

  1. 加密算法:

公钥体系:私钥用于解密和签名,公钥用于加密和认证。

单钥加密/私钥加密/共享密码加密/对称加密算法:DES、3DES、AES、RC-5、2DEA、IDEA、Blowfish
双钥加密/公钥加密(公开密钥加密)/公开密钥加密/非对称加密算法:RSA、Elgamal、ECC、背包算法、Rabin、D-H、DSA
信息摘要算法: MD5、SHA
RSA:签名
IDEA和RC-4:数据传输加密
MD5:信息摘要算法,输出128位

  1. 数字语音的采样频率定义为8000赫兹,这是因为语音信号定义的频率最高值为4000赫兹。

尼奎斯特取样定理认为如果取样速率大于模拟信号最高频率的二倍,则可使用得到的样本来恢复原来的模拟信号。

  1. 域名查询:本地DNS缓存→host表→本地DNS服务器→根据域名服务器、顶级域名服务器、权限域名服务器。
  2. TVP/IP协议栈中协议及层次
  3. 信息安全

物理安全:设备防雷击 / 通信线路安全,物理设备安全,机房的安全
安全网络:安全入侵检测 / 身份认证访问控制,数据传输的保密与完整性……
系统安全:漏洞发现与补丁管理
应用安全:流量控制

  1. 数字音乐合成器

数字载波频率→音调音高
数字载波幅度→音量
波形影响基本音调完整性
快速改变调制波形的频率(音调周期)改变颤音的特性
反馈量改变正常音调,产生刺耳的声音
算法→音色

  1. 对于多种不同的路由协议到一个目地的路由信息,首先根据管理距离决定相信哪一个协
  2. 为了攻击远程主机,通常利用端口扫描技术检测远程主机状态

WAV:声音文件
BMP:标准图象文件格式
MP3.音频压缩技术
Mov:音频,视频文件格式

  1. netstat-n :显示所有已建立的有效连接,状态如下:

L2STEN:侦听连接请求
SYN-SENT:等待匹配的连接请求
SYN-RECEIVED:等待对方对连接请求的确认
ESTABLISHED:一个打开的连接
FN-WAIT-1:等诗连接中断请求,或确认
FLN-WAIT:中断请求
COSE-WAIT:二等待从本地用户发来的连接中断请求
CLOSING:等诗中断的确认
LAST-ACK:等诗原来发向中断请求确认
TIMIE-WAIT:等待足有够时间以确保远程TCP中断请求确认
CLOSED:没有任何连接状态

  1. 主机路由子网掩码为255.25.85.255 静态路由一般 255.255.255.0 默认路由0.0.0.0
  2. 三层模型

接入层:向本地网段提供用户接入
汇聚层:网络访问策略控制、数据包处理、过滤、寻址
核心层:数据交换

  1. VLAN虚拟局场网,根据管理功能、组织机构和应用类型对交换局域网进行分段而形成逻辑网络,属于同一个VLAN的所有端口构成一个广播域。

把物理网络划分为VLAN,可以控制网络流量,有助于控制广播风暴、减小冲突提高网络利用率.优点之一允许逻辑地划分网段

  1. 网络系统中通常将Web服务器置于DMZ区

DMZ是为了解决安装防火墙后外部网络不能访问内部网络服物器的问题而设立向一个非安全系统与安全系统之间的缓冲区,这个缓冲区位于企业内部网络和外部网络之间的小网络区内,在这个小网络区域内可以放置一些必须公开的服务器设施,如企业Web服务器、FTP服务器和论坛等。

  1. DOS攻击:迫使服务器的缓冲区充满,不接收新的请求;IP欺骗迫使服务器把合法用户的连接复位影响合法用户连接。例:SYN Floding攻击
  2. 计算机病毒的特征:传染性、触发性、隐蔽性,不包括自毁性。

蠕虫病毒Worm:熊猫烧香、红色代码、爱虫病毒、震网、Nimda病毒、爱丽兹病毒
特洛伊木马Trojan:未知程序建立网络连接
后门病毒Backdoor
宏病毒Macor:文本文档、数据库、电子表格
黑客性质病毒:冰河木马病毒

  1. 表示媒体:为了加工、处理和传输感觉媒体而人为研究、构造出来的一种媒体;它有各种编码方式如文本编码、图像编码,声音编码

表现媒体:信息输入和输出的媒体,如键盘,鼠标,扫描仪
感觉媒体:直接作用于人的感觉器官,使人产生感觉的媒体,如文本、图像
存储媒体:存储表示媒体的物理介质,如硬盘,软盘
传输媒体:传输表示媒体的物理质,如电缆,光缆

显示深度>图像深度:屏目能较真实地反映颜色,显示颜色完全取决于图像颜色。
显示深度=图像深度:若用真彩色显示模式或显示调色板与图像调色板一致,屏目能
较真实地反映颜色,反之,不一致则色彩会失真。
显示深度<图像深度:颜色失真

  1. PPP的NCP可以承载多种协议的三层数据包

使用LCP控制多种链路的参数(建立、认证、压缩、回拨)
认证类型:

  • OPAP:二次握手(明文不切密)
  • CHAP:三次握手(密文采用MDS加密)
  • 双向验证:CHAP主验证网格
  • 加固验证:PAP和CHAP同时
  1. 矢量图:由线连接的点,基本单元是图元
  2. IPV4传递讯数据:隧道技术
    IPV4与IPV6连接:双协议栈技术
  3. PKI体制中,保证数字证书不被篡改的方法是用证书主人的私钥对数字证书签名。

下午

数据流图

考察内容

  1. 实体:人、物、系统
  2. 数据存储:信息、文件、表、库
  3. 补充:父图和子图要平衡;子图加工既要有输入也要有输出;对照说明看子图中每一个加工是否都完成了说明中的任务(操作)。

真题简答总结

  1. 物理数据流图和逻辑数据流图的区别

物理数据流图关注的是系统中的物理实体,以及一些具体的文档、报告和其他输入输出的硬拷贝。物理数据流图用作系统构造和现实的技术性蓝图。
逻辑数据流图强调参与者所做的事情,可以帮助设计者决定需要哪些系统资源,为了运行系统用户必须执行的的活动;在系统安装之后如何保护和控制这些系统。
在逻辑数据流图中说明应该具有哪些加工和数据存储,而不是关心这些加工和数据存储是如何实现的,物理数据流图则要说明加工和数据存储是如何实现的。

UML图设计/设计模式

真题简答总结

  1. 关联和聚集的关系及不同点

聚集是关联的特例。
聚集表示部分与整体关系的关联,若从生命周期的角度考虑,关联对象的生命周期一般无必然联系,聚集的整体对象对部分对象的生命周期负责。

  1. C/S→B/S应用模式

(1)方案优点
①开发人员无须设计新的业务模式,只需在原系统的界面和中间层添加Web Service层就能继承原系统的所有业务;
②有可能以较少的开发时间和工作量将系统升级为B/S应用模式;
③可以不修改原有的Web服务和中间层,直接扩展新服务。
(2)WSDL、SOAP、UDDI
WSDL:Web Service描述语言,用于描述Web Service的服务、接口绑定等,为用户提供详细的接口说明。
SOAP:通信协议,用于以服务的方式在互联网上发布有用的程序模块。
UDDI:提供了一种统一的发布、查找、定位Web服务的方法。
(3)说明服务注册中心、服务提供者和服务请求者的主要功能及其交互过程。
在Web Service模型的解决方案中,服务提供者定义并实现Web Service,使用服务描述语言(WSDL)描述Web Service,然后将服务描述发布到服务请求者或服务注册中心。服务请求者使用查找操作从本地或服务注册中心检索服务描述,然后使用服务描述与服务提供者进行绑定并调用Web Service。服务注册中心是整个模型中的可选角色,是连接服务提供者和服务请求者的纽带。

  1. 组装和聚集分别表示什么含义?两者的区别是什么?

组装和聚集都表示实例之间的整体/部分关系。组装是聚集的一种形式。
聚集是概念性的,只是区分整体与部分。
组装具有很强的归属关系,而且整体与部分的对象生存周期是一致的。

  1. 使用不同的密码体制加密消息和消息摘要,请用 150字以内文字简要说明这样做的理由。

对称密钥体系的加解密效率非常高,适合于加解密大量的数据,因此可用于加密消息。公钥密码体系的加解密效率较低,更适合用于加密少量数据的场合,因此可用于加密消息摘要和会话密钥。

ER图

  1. 数据冗余、插入异常、修改异常、删除异常→关系分解

真题错题总结

2007-上半年-上午

  1. 程序状态字寄存器PSW不属于计算机控制器中的部件。
  2. RISC设计应遵循的设计原则:①指令条数应少一些②寻址方式尽可能少③采用等长指令④设计尽可能多的通用寄存器。
  3. 多形病毒指的是每次感染都会改变自己。
  4. 感染==“熊猫病毒”==后的计算机不会出现破坏计算机主板的情况。

出现的情况:执行文件的图标变成熊猫烧香;用户信息被泄露;系统运行变慢。

  1. SJ/T为推荐性行业标准的代号。

已正式公布的行业代号有QJ(航天)、SJ(电子)、JB(机械)和JR(金融系统)等。
SJ/T:行业推荐性标准;Q/T11:企业标准;GB/T:国家推荐性标准;DB11/T:地方推荐性标准。

  1. 显示器像素点距的规格中最好的是0.28。(0.39;0.33;0.31;0.28)越小越好

  2. 在彩色喷墨打印机中,将油墨进行混合后得到的颜色称为相减色。

  3. 若每个像素具有n位的颜色深度,可表示2n2^n2n种不同的颜色。

  4. CVS是一种版本控制工具。(Concurrent Version System)

  5. 函数型语言:LISP,主要应用于人工智能领域;逻辑型语言:PROLOG,应用于自然语言理解等;Smalltalk、C++、Java、C#都是面对对象语言

  6. 在面对对象语言中,类的实例化是指对类的实例分配存储空间。

  7. 进程状态转换:

  8. 在操作系统中,虚拟设备通常采用Spooling技术,利用磁盘设备来提供虚拟设备。

  9. 不属于序言性注释的是嵌入在程序中的SQL语句。

  10. ISO/IEC 9126软件质量模型中第一层定义了六个质量特性,并为各质量特性定义了相应的量子特性,其中易分析子特性属于软件的可维护性质量特性。

  1. 若类A的对象维持类B对象的引用或指针,并可与类C的对象共享相同的类B的对象,那么类A与类B具有聚合关系。

  2. 在数据库管理系统中,完整性约束不属于安全性控制机制。

属于:视图、密码验证、用户授权。

  1. 对n个元素的数组进行堆排序,其平均时间复杂度和最坏情况下的时间复杂度都是O(nlog⁡n)O\left( n\log n \right)O(nlogn)。

希尔排序:O(n1.4)O\left( n^{1.4} \right)O(n1.4);快速排序在最坏情况下的时间复杂度为:O(n2)O\left( n^2 \right)O(n2);选择排序:O(n2)O\left( n^2 \right)O(n2)。

  1. ARP表用于建立IP地址到MAC地址的映射。
  2. 在Windows操作系统中,采用tracert命令来测试到达目标所经过的路由器的数目及IP地址。

中级软件设计师知识点总结相关推荐

  1. 历年软考中级软件设计师知识点分布和分值比重总结

    软考软件设计师 备考 前言 Nothing is impossible. 没有什么是不可能的. 加油,写给备考软件设计师的你 历年上午题知识点分布规律 知识点 分数 说明 比例 软件工程基础知识 11 ...

  2. 中级软件设计师知识点整理:法律法规与标准化

    某软件公司项目组的程序员在程序编写完成后均按公司规定撰写文档,并上交公司存档.此情形下,该软件文档著作权应由( 公司 )享有. 李某购买了一张有注册商标的应用软件光盘,则李某享有(光盘的所有权和使用权 ...

  3. 软考中级-软件设计师知识点与例题-1、计算机组成与结构

    计算机组成与结构 计算机基本工作原理 进制: 后缀为H.0X表示的是16进制,B表示二进制数,Q表示八进制数,D表示十进制数. 16进制:09.AF/af(表示1015): 16位数对应进制的表示方法 ...

  4. 中级软件设计师知识点整理:多媒体基础

    数字语音的采样频率是8KHZ,是因为语音信号定义的频率最高值是4KHz,是根据一个定理得来的,要让取样速率大于模拟信号最高频率的2倍,这样就能在样本里恢复原来的信号了 使用图像扫描仪以300DPI的分 ...

  5. (2012.12.25)我的中级软件设计师考试

    我的中级软件设计师考试 ―― 2012.12.25(By: Neicole) 一.开篇 中级软件设计师,合格分是45/75(上午题)+ 45/75(下午题),然后,这次低分险过52+51.本文仅想简单 ...

  6. 2023 上半年软件设计师知识点复习总纲

    前言:全国计算机技术与软件专业技术资格(水平)考试(以下简称IT职业资格考试)是由中华人民共和国人事部主管,国家计算机网络与信息安全管理中心主办的一项国家级.权威性的计算机职业技能水平认证考试.主要为 ...

  7. 全国软考中级软件设计师 复习大纲概览

    本专栏记录学习复习软考中级软件设计师的内容,官方网站上有中级设计师的考试大纲和指导用书,官网链接:https://www.ruankao.org.cn 考试的难度总体来讲不是很大,但是设计的知识面非常 ...

  8. 中级软件设计师2011上半年上午试题

    中级软件设计师2011上半年上午试题 单项选择题 1. 在CPU中用于跟踪指令地址的寄存器是______. A.地址寄存器(MAR)    B.数据寄存器(MDR)  C.程序计数器(PC)      ...

  9. 2021上半年计算机技术与软件专业技术资格考试——中级软件设计师 经验分享

    2021上半年计算机技术与软件专业技术资格考试--中级软件设计师 经验分享 为什么考 软考资讯 自身情况 备考过程 考试 感想 为什么考 一开始好像是有些招聘需要一些专业证书,当时看到这个证书觉得可能 ...

  10. 软考-2021年上半年中级软件设计师备考经验分享(已过!)

    这篇文章算是我整个软考的回顾吧,先在此声明,这篇文章不仅适合于准备下半年考试的同学也同样适合于对自己的大学生涯有些迷茫的,不知道现在该做些什么的同学阅读. 对此我会从下面几个方面来讲述我的一些心得体会 ...

最新文章

  1. [Angular JS教程] HeroService: getHeroes failed: undefined 问题解决方法
  2. 统计寄存器AX中1 的个数
  3. 小马哥spring编程核心思想_Spring源码高级笔记之——Spring核心思想
  4. 画一画javascript原型链
  5. php include 导航栏,PHP全栈开发(八):CSS Ⅹ 导航栏制作
  6. JAVA调起clearcase_Rational ClearCase和Rational ClearQuest对Java API的支持
  7. 工控机运行linux,什么是linux嵌入式工控机
  8. 在配置DNS后服务器启动失败问题的排查
  9. 生动实践现代农业-国稻种芯-泸州江阳:谋定产村深度融合
  10. current account(经常账户)
  11. 计算机管理的磁盘管理简单卷,win7磁盘管理分区后无法新建简单卷怎么解决
  12. java计算机毕业设计淮安城市开放大学实习实训管理系统源码+mysql数据库+系统+lw文档+部署
  13. Re:if java for
  14. 小白如何利用短视频做引流推广
  15. 百度霸屏引流推广需要多少钱?那么才能霸屏?百度霸屏有什么好处?
  16. 制作XPE启动光盘的教程
  17. 在有Anaconda情况下,使用python命令报错的问题
  18. R语言swirl教程(R Programming)13——Simulation
  19. oracle 并行查询
  20. Map根据Key值进行排序(升序加降序)

热门文章

  1. hdu 5053 the Sum of Cube(水)
  2. 修改c盘user用户文件夹名称
  3. 【Java】生成随机数的两种方法
  4. keil4for51与keil4forARM的安装与兼容
  5. mysql jemalloc_jemalloc优化MySQL、Nginx内存管理
  6. 阿里云大学诚邀各界”人工智能”专家共建人工智能方向人才培养生态!
  7. 新浪微博如何批量删除以前发过的微博
  8. 魅族android11,魅族17系列即将吃上安卓11,信息保护更稳了?
  9. 笔记本计算机bios设置,联想笔记本BIOS设置详解
  10. 维宏控制卡win7 驱动_雕刻机专用维宏5.55运动驱动控制卡