软设知识点记录

以下是我个人考软件设计师的一些经验,本人一共考了两次软件设计师,第一次下午题查三分,第二次成绩还没出,虽然没什么悬念,这里分享一下我考软件设计师的一些经验分享

需要知识储备

  • C语言
  • Java或C++
  • 数据结构
  • 没了

考试结构

  • 上午题

    • 数据结构知识
    • uml流程图
    • 设计模式
    • 软件开发模型
    • 杂七杂八
  • 下午题
    • 数据库(类似阅读理解,找不同)
    • 一到三题都是阅读理解,答案基本在文中都能找出来
    • 算法题
    • 设计模式题

学习方法

学习方法有很多种,但是绝对不推荐买软官网卖的书

本人使用的方法

  • 直接真题,哪题不懂搜哪题,记录笔记,归纳知识点,因为考点比较杂,记录到一定时间时要对笔记进行归总,哪些笔记属于同一个知识点,到时复习时又个联想记录方便,也有助于记忆

  • 完善基础

    • C语言

      • 最好先学个C,不想学C,想速成考证的,也不是不行,就算下午题第四题不写,一分不拿,光靠其他几题也是可能通过的,不过会增加之后的学习难度,和对数据结构知识理解的难度作为基础学习对于往后学习也有帮助
      • C学习资源推荐MOOC中国大学,选个国家精品看就行,学到 结构类型、指针、链表差不多够用了
      • 中国大学MOOC 程序设计入门——C语言 翁恺
    • 数据结构
      • 大部分数据机构的课程都是使用C语言来讲解的,C有基础后,数据结构就是一种思想,虽然软件设计师考的比较浅,但是如果想进行往后的学习,敲一敲代码还是比较有必要的,整门课程学习
      • 数据结构资源推荐 MOOC ,数据结构 浙江大学的也是国家精品
      • 中国大学MOOC 数据结构 浙江大学
    • Java
      • Java是下午题最好拿分的,只要五个空,拿满就15分,性价比最高的题目,第六题要结合设计模式一同理解作答,光靠找技巧不容易哪满分,找技巧得分应该不会超过9分,要拿满只要学完Java基础后多理解一个设计模式就行
      • 资源推荐MOOC Java核型技术初级看到38p差不多了
      • 设计模式,菜鸟教程,理解为主,从整体看,从结构看到细节,到数据流走向
      • 中国大学MOOC Java核心技术 浙江大学
      • 菜鸟教程 设计模式
  • 使用51CTO小程序刷题,这个是比较实用的,直接刷题,哪题不懂,学哪题,还可以加入学习群一起学习,不理解的发到群上,虽然基本也没什么用,但是群上吹吹水放松一下还是很不错的

  • 买课,针对考试的课程有很多,我买了51CTO的课,选一个便宜的,上午100的视频,下午99的视频,就算零基础,有充分的方法,少走弯路一次过软件设计师完全不是问题,不推荐买几千的课程,没必要

    • 随便找的考证课程

我还记录了很多很多笔记在OneNote,都是个人自然语言描述有需要可以联系我

以下都是我考前复习的一些随笔

数据结构

  • 挂在右子树上
  • 最小堆,哈夫曼树,霍夫曼树,最优二叉树
  • 提高编码效率
  • 图的遍历;
    • DFS深度优先遍历
    • BFS广度优先遍历

杂项记录

  • 计算执行时间,取指,分析,执行,100条

    • 顺序方式,(取指+分析+执行)*100
    • 流水线方式(取指+分析+执行)*1+(分析+执行) * 99
  • 系统总线
    • 地址
    • 数据
    • 控制
  • 系统初始化过程,按照自底向上可分为
    • 片级初始化
    • 板级初始化
    • 系统级初始化
      • 以软件初始化为主
      • 主要进行操作系统初始化
        • 加载设备驱动
        • 建立内存
        • 加载初始化其他软件模块
        • 创建程序应用环境,将控制权交给应用程序
  • 嵌入式操作系统
    • 微型化
    • 可定制
    • 实时性
    • 可靠性
    • 易移植性

动态规划:

01背包问题:

  • 要求装尽价值尽可能多的物品,求最大价值
  • 在背包中和不在背包中,0和1

  • 数据流图平衡:任何一个数据流子图必须与它上一层父图的某个加工对应,二者的输入数据流和输出数据流必须保持一致,此即父图与子图的平衡,父图与子图平衡中,数据流的数目和名称可以完全相同,也可以在数目上不相等,但是借助数据字典中数据流描述,确定父图中的数据流是由子图中几个数据流合并而成的,也即子图是对父图中加工和数据流进行分解

结构化分析一般包括以下工具: