软件设计师-软考中级-下午题答题笔记-答题技巧-解题方式-下午题内容学习

本文主要是介绍软件设计师-软考中级-下午题答题笔记-答题技巧-解题方式-下午题内容学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

数据流图(DFD)

数据流图基本概念

数据字典

数据流图平衡原则

答题技巧

数据库设计

数据库设计过程(了解)

ER模型

答题技巧

UML建模

用例图

类图和对象图

顺序图

活动图

状态图

通信图

数据结构及算法

考察

答题思路

面向对象程序设计

答题思路

C++类与派生类的定义:

C++构造函数(相比较多)与析构函数(几乎没出现过)

C++虚函数(较多)


数据流图(DFD)

特征:第一题,做大量练习,掌握技巧可拿高分。

提问问题大致如下:

  1. 补充外部实体、补充数据流等。
  2. 根据副图子图以及题目给出的描述,查找数据流图有什么缺陷和问题。

内容掌握:

  1. 数据流图基本概念
  2. 数据字典
  3. 数据平衡原则

1、数据流图基本概念

数据流:名词,反应含义。

加工:做处理。

数据存储:表、文件。

外部实体:人员、组织。

顶层图与细化:

分层思路:顶层分解,逐步细化。关键:主图与子图的平衡。

2、数据字典

 不需要深究,只用懂得怎么用,啥意思就行。

3、数据流图平衡原则

父图与子图之间的平衡:

  1. 顶层图和子图的数据流要一致,外部实体的连接等,在系统细化不能表示,不需要管。
  2. 注意数据流的方向和含义名称。

子图内平衡(寻找错误,图本身出现问题)

  1. 黑洞情况:加工只有输入没有输出。
  2. 奇迹情况:加工只有输出没有输入。
  3. 正常情况:有输出有输入。

答题技巧:

1、详细分析试题说明

题干分析,要把每一句话对应起来,不要笼统分析。

比如:数据库管理员是一个外部实体;说明图中必然包含数据库管理员且为一个实体。

2、利用数据平衡原则

主图与子图要数据平衡,在主图和子图中的数据流是否匹配,这是解题的技巧也是关键。

比如:主图中有修改数据这一条数据流,但是子图没有,那么子图必然缺少了这条数据流。

解题流程:

  1. 大体的看结构。
  2. 看题目,首先回答概念类的问题。
  3. 通过阅读题干,先找出系统管理的关键字,各个外部实体根据相应的描述对应上去,对应出外部实体,当遇到不确定的外部实体,可以继续往下看,利用排除法确定外部实体。
  4. 找出子图的文件,方法差不多。
  5. 查找子图缺少的数据流,首先与父图比较,找出缺少的数据流,可以对外部实体进行数据流的匹配,看数量是否一致。
  6. 分析系统中缺少的数据流,可以通过加工本身是否有错误,如果没有就从题干寻找,然后一一对应下来,最终把缺少的数据流寻找出来。

数据库设计

特征:题目比较固定,掌握基础知识。

内容掌握:

  1. 数据库设计过程
  2. ER模型

1、数据库设计过程(了解)

 

2、ER模型

实体间联系类型:

 转换的基本原则:实体与联系分别转换成关系,属性则转换成相应关系的属性。

1对1:可以转合并到任何一边。

1对多:只能转合并到多的一边。

多对多,必须单独出来。

答题技巧

1、详细分析试题说明

ER模型的补充,关系模式的补充等。

2、熟练掌握基本知识

解题流程:

  1. 先看问题,查看问题格式,比如关系模式的格式,n:m那写的时候要对应。
  2. 分析关系模式的问题时,不要只凭自己的感觉,要返回题干,找出题干中的说辞,从两个维度,对应出对应关系。
  3. 寻找单独出现的实体,没有任何连接,对它进行分析,因为它必然是问题的所在。
  4. 对于补充属性时,一定要注意关系模式,一般不仅仅只缺少实体的属性,还需要考虑关系模式的属性,是否存在。

UML建模

特征:稳定出题一个,因为图比较多,掌握知识面较多,相比前两题多难,但一般用例图和类图会比较多,所以要首先搞清楚,先掌握两个图,再去分析其他图。

用例图

考察方式:

1、用例中的完整描述,分析哪个位置的名字或者角色。

2、根据两个用例之间分析出它们是什么关系,是包括关系(include)还是扩展关系(extend)或者泛化模式(generalization)。

注:区分包含关系和扩展关系,最主要是分析出是不是必须的,如果必须的,是包含,否则就是扩展。

类图和对象图

考察方式:

1、填类名(主要高),方法名,属性名(低)。

2、填多重度。

3、填关系。

主要了解泛化(对类)、组合、聚合、实现(对接口)。

顺序图

核心在消息上。根据处理流程分析几号消息是干什么的,其次填对象之类的。

 

活动图

与程序流程图非常接近。合并分离、分离合并、分支。

考察:类似其他一样,扣除关键部分进行考察。

答题技巧:与其他图一样可以通过把图画出来。

状态图

以状态为节点,从一种状态由于有一种触发事件,从而变为另一种状态。

考察:给你一种系统描述,由状态的变迁中,扣除一些关键,让我们填写。

答题思路:总共有几种状态,由该状态变成另一种状态又需要什么条件,把这些转化为图就可能很好的解决状态图。

通信图

与顺序图一起统称为交互图。

考察:扣除、填空,通信图和顺序图,顺序图主要考察时间顺序。

数据结构及算法

特点:不要求高分,要把基本的分拿到,这比较简单(6-8分)

考察:

  1. 分治法(递归技术、二分查找):单独拆分,与原问题一致。
  2. 回溯法:优先搜索法,深度优先,当走不通,返回一步重新开始。(迷宫问题)
  3. 贪心法:部分最优。(局部最优解)
  4. 动态规划法:与分治相似,但是子问题之间有联系,一般通过表来记录,只需要调用各个问题的结果。(全局最优解)

答题思路:

  1. 面对代码填写,先不急写,往下看题目。
  2. 分析算法是什么算法,计算时间复杂度、空间复杂度。(计算时间复杂度空间复杂度还需要多加了解)
  3. 注:分析问题,那些问题需要先解决,那些问题可以后面解决,要合理的进行安排。

面向对象程序设计

特点:比较难。对C++或者JAVA比较了解的基础上,还要对这些逻辑结构有些了解。

答题思路:

  1. 首先把部分知识点把握,在这些空一些语法或者定义这些简单的填空要把握。
  2. 其他比较难的就看发挥。

语法要点:

C++类与派生类的定义:

 

 

C++构造函数(相比较多)与析构函数(几乎没出现过)

C++虚函数(较多)

 

这篇关于软件设计师-软考中级-下午题答题笔记-答题技巧-解题方式-下午题内容学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/759665

相关文章

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

mtu设置多少网速最快? 路由器MTU设置最佳网速的技巧

《mtu设置多少网速最快?路由器MTU设置最佳网速的技巧》mtu设置多少网速最快?想要通过设置路由器mtu获得最佳网速,该怎么设置呢?下面我们就来看看路由器MTU设置最佳网速的技巧... 答:1500 MTU值指的是在网络传输中数据包的最大值,合理的设置MTU 值可以让网络更快!mtu设置可以优化不同的网

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

Mybatis的分页实现方式

《Mybatis的分页实现方式》MyBatis的分页实现方式主要有以下几种,每种方式适用于不同的场景,且在性能、灵活性和代码侵入性上有所差异,对Mybatis的分页实现方式感兴趣的朋友一起看看吧... 目录​1. 原生 SQL 分页(物理分页)​​2. RowBounds 分页(逻辑分页)​​3. Page

MySQL JSON 查询中的对象与数组技巧及查询示例

《MySQLJSON查询中的对象与数组技巧及查询示例》MySQL中JSON对象和JSON数组查询的详细介绍及带有WHERE条件的查询示例,本文给大家介绍的非常详细,mysqljson查询示例相关知... 目录jsON 对象查询1. JSON_CONTAINS2. JSON_EXTRACT3. JSON_TA

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与