软考 - 软考软件设计师考试总结(2018上半年)

前言

就在昨天,软考结束了。感觉将多年学到的知识全部汇总到了一块。 
前段时间一直进行着软件编码的工作,应当是时候告一段落了。理论推动实践,实践反过来推动理论的理解。

与物质和意识的关系一样。 
* 世界是物质的,物质决定意识; 
* 意识反过来影响物质,也就是物质的主观能动性。

本章节主要包括如下几个部分:

  • 考试题型与技巧总结
  • 主要知识点整理
  • 试题与失误点总结
  • 考试感悟

考试题型与技巧

软件设计师的试题主要分为上、下午两个部分。上午主要是选择题(75题75分),下午为6道大题(6题75分 其中五/六题为选择Java&C++ 个人认为Java的较为简单)。

上午题目较为繁杂,涵盖了计算机组成原理、编译原理、计算机操作系统、计算机网络数据库设计、数据库设计、数据结构、算法设计、软件工程、面向对象与设计模式等知识点。题目分值范围主要如下所示:

  • 一、计算机基本知识 (1-6/6分/8%/难度中等)
  • 二、程序语言基本知识(20-22 & 48-50/6分/8%/难度中等)
  • 三、操作系统基本知识(23-28/6分/8%/难度适中)
  • 四、系统开发和运行(12-14分/20%/难度偏难)
  • 五、网络基础知识(7-9 & 66-70/8分/11%/难度不高)
  • 六、多媒体基础知识(3分/4%/难度较低)
  • 七、数据库技术(6分/8%/难度中等偏上)
  • 八、数据结构(4-7分/5%-9%/难度中等偏难)
  • 九、算法设计与分析(61-65/5分/5%/难度较高)
  • 十、面向对象技术(38-37/10-11分/13%-15%/难度中等偏难)
  • 十一、标准化和知识产权基本知识(13-14/2分/3%/难度不高)
  • 十二、计算机专业英语(71-75/5分/6%/难度中等)

下午等试题题型基本确定,6题的题型分别为:

  • 第一题 (系统开发和运行)数据流图(挖空填空 外部实体/数据存储/数据流图的平衡)
  • 第二题 (数据库技术)数据库E-R图设计(挖空填空 关系连线/表字段设计/开方试题)
  • 第三题 (面向对象技术)UML图设计(挖空填空 设计模式/设计模式原理)
  • 第四题 (数据结构&算法)算法设计(挖空填空 填语句/分析算法时间和空间复杂度) (动态规划/分冶法/贪心)
  • 第五/六题 (面向对象技术)Java&C++程序设计(填写语句)

PS: 下午的前2题基本没有什么难度,考的是阅读理解。第三、五/六题主要考的设计模式,五/六考语言开发。第四题考的是算法设计,数据结构&算法都会涉及,迭代(动态规划&分冶),贪心,查找和排序算法都有可能会考到。


考试题型与技巧

计算机基本知识

  • 二进制/十进制/十六进制
  • 源码/反码/补码 及其计算
  • 校验码(海明码)
  • 计算机基本组成(CPU/内存/外存/输入输出设备)
  • 总线类型(了解)
  • 指令(流水取指)
  • RISC/CISC

除了解知识外,计算的主要包括地址、流水取指图。

程序语言基本知识

  • 逆波兰式
  • 有限自动机(能看懂图像)
  • 语法语义分析(主要考查理解和分析)

操作系统基本知识

  • 操作系统类型
  • PV操作
  • 死锁/死锁4个必要条件/处理死锁(死锁避免/死锁预防/死锁检测)(分析图)
  • 分页存储管理
  • 内存/外存/Cache
  • 虚拟内存
  • 进程&资源调度图(考查资源分配)

系统开发和运行

  • 软件开发周期(瀑布模型/演化模型/螺旋模型/喷泉模型/增量模型)
  • 软件复杂度(McCahe算法及图分析)
  • 数据流图(外部实体/加工/数据存储/数据流 & 顶层图/1层图 &数据流平衡)
  • 数据字典
  • 软件测试(白盒测试&黑盒测试)
  • 项目活动图(里程碑即最长时间)
  • SEI能力程度模型

网络基础知识

  • ISO/OSCI七层模型(各层物理组件和设备)
  • TCP/IP模型
  • TCP/IP协议族(各层协议 TCP IP 等)
  • IPV4&IPV6(ABCD类IP地址/子网掩码/网关 计算)
  • UDP报文协议
  • 加密技术(公钥私钥/数字签名)
  • HTML语言(了解即可)

多媒体基础技术

  • 基本图像文件类型及处理软件(矢量图&位图)
  • 声音文件类型及处理软件(A/D转码)
  • 视屏文件基本类型&处理软件(流媒体技术)

数据库技术

  • BMS/BCMS/RBCMS
  • 数据库三大范式(1NF/2NF/3NF/BCNF)
  • 数据库关系代数(投影/选择/连接)
  • E-R图
  • 数据库基本语言(DDL/DML/事务)
  • 事务特性(ACID 原子/一致/隔离性/持久性)
  • SQL(DDL 表 增删改/DML 增删差改/Grant/View/Index)
  • 数据库锁机制(悲观锁/乐观锁 & 封锁协议)

数据结构

  • 堆栈
  • 队列
  • 链表&数组
  • 树&二叉树&红黑树&平衡二叉树
  • 排序算法&查找算法(实现和时间&空间复杂度)

算法设计与分析

  • 分冶法
  • 动态规划算法
  • 回溯法
  • 贪心法

面向对象技术

  • 面向对象设计(OOA/OOD/OOP)(封装/多态/继承)
  • UML图(主要是类图 其次部署图等)
  • 设计模式(23种设计模式) 
    • 5 创建型 (工厂模型/抽象工厂模型/单例模型/构建器模型(Builder)/原型模型(Prototype))
    • 7 结构型 (适配器模型(Adapter)/装饰器模型(Decator)/门面模型()/代理模型/组合模型/桥接模型(Bridge)/享元模型)
    • 11 行为型(父子: 策略模型/模版模型 类状态: 状态模型/备忘录模型 类之间: 订阅模型/迭代子模型/命令模型(Command)/责任链模型 其它: 观察者模型/中介者模型/解析器模型)

标准化和知识产权基本知识

  • 知识产权(软件著作权&盗版)
  • 著作权(署名权/发表权等)

计算机专业英语

  • 选词填空(语法&语义)

考试感悟

总体感觉不是很难,关键在于知识点十分细和杂。下午的把几种题型和基本算法、设计模式掌握之后基本不难。

一起的,考软件设计师的貌似很少,都是考项目管理/软件集成的。但愿能过,于今年下半年把软件架构师考完吧。

                                  于二零一八年五月二十八日夜-上海

猜你喜欢

转载自blog.csdn.net/qq_40395278/article/details/81042603