全国统一学习专线

考“软考”的软件设计师 该看什么书?

logo
来源:七品教育

2024-04-17|已帮助:43

进入 >

考软件设计师,必须买两本书:《软件设计师教程》 《教程》。建议购买教育部指定教材,《软件设计师历年试题解析》。《解析》无所谓,

张友生老师的分析似乎更加全面和有针对性。另外还有《软件设计师大纲》,可以在复习过程中定期检查,梳理知识结构体系,从而发现缺失,填补空白。1.每门课程的具体学习方法(1)软件工程。

软件工程是复习的重点。不仅上午的题占10%左右,下午的题中还有两个关于软件设计与分析的问题。你必须熟练掌握书中提到的各种软件分析设计方法和相关分析图。

充分理解各种图的功能和制作方法(尤其是各种图的组件)以及各种图之间的转换和连接(如果有的话),UML面向对象软件设计方法和面向过程的软件设计方法,软件测试要达到理解的水平。

其他的内容都要背,因为基本都是早上的题,每年的题都不确定,但是肯定有和CMM有关的。(2)数据库。数据库部分也很重要,上午5分钟左右,下午至少一个数据库专题,而且必须是关系型数据库。

还要了解E-R模式,从中可以导出关系,还要了解关系数据库的几种范式和建立关系的方法。因此,有必要非常清楚关系数据库的基本概念,如键的定义、函数依赖、范式的定义、作用和转换。

数据并发控制,要掌握几种常用的SQL语句,每个语句最好用笔写几遍,加深对各种形式语句的记忆,学数据库也不是太难。因为考试不会考数据的物理存储和数据安全,感觉这个知识比较难。

交叉学科比较多。(3)学习数据结构和算法。数据结构和算法是考试的重点内容,其复习主要以普通教材为主。

对数组、链表、队列、栈、树、堆等基本的数据组织方式非常熟悉(看到算法就应该知道哪种数据组织方式效率更高),对排序、索引、图的算法了解清楚(算法的分析过程和代码要非常清楚)。

算法的分析方法达到了理解和应用的水平。非常精通C语言(一定要会应用C语言语句的一些技巧,比如用函数的返回值作为判断条件,用a[i]在循环中处理数组,提高编码效率。

这种招数只有看大量代码才能提高。如果你是高级面向对象语言的初学者,建议先学C,感觉更像语言规范。

Java是一个编程工具,由于其跨平台的特性,它有很多独特的功能和特点。有时间一定要看一本C语言的数据结构,能让你更全面深刻的理解类和对象的编程方法。

算法的学习不是一朝一夕可以提高的,一定要静下心来学习一些经典的算法,比如:穷举法、贪心法、分治法、迭代法、递归法、回溯法;找一些著名的算法程序来分析,

例如:背包问题、组合问题、斐波那契数列、走马棋盘问题、运费负担问题、八皇后问题、迷宫问题、汉诺塔问题、乔切夫环问题等。这些算法根植在你的脑海里,当你看到问题的时候,你自然会想到用什么方法去寻找最优解。

(4)编程语言。编程语言包括C语言、编译原理、面向对象编程语言(通常以C为例)。编译原理必须经过词法分析的检验,词法分析是后期编译过程的基础。

测试的主要内容有NFA与DFA的转换、范式与有限自动机的转换等。语法分析有一年考了下午的,对于初学者来说比较难,比较抽象,理论性比较强。反正我花了四个月学了一点,复习这一课也没什么技巧。

听听思赛的《编译原理视频教程》,学起来更快。c语言要掌握三个基本结构,数组、链表、结构、公共体、参数传递、指针和指针数组、指针函数等等。面向对象编程语言应了解基本概念和初步应用,

考试不深。(5)面向对象的方法。面向对象方法论不仅是上午考试的重点,也是下午考试的重点。平均上午12点左右,下午30点左右,一个UML图形相关的题目,一个面向对象编程的可选题目。

所以要把这一块掌握好。UML中的类图、用例图、状态图、协作图要掌握好,考试中会经常出现。老师一再强调这个知识点要学。我觉得老师做题很准。(6)操作系统。操作系统无话可说,

把处理器管理、存储管理、设备管理、文件管理、系统安全等几个功能模块和相关算法搞清楚就好。其中我觉得理解PV操作(它在并发进程中的应用非常灵活)和中断(这个对我来说无论如何都很难)。

一定要理解相关内容中提到的算法和分析流程。当然也要注意进程死锁和段页存储的问题。其他课程的复习会根据考试大纲进行,里面的概念会搞清楚,因为大部分都是晨间题。

2.读书与实践相结合“读书时,要有目的,随任务而去;看完之后,做题巩固,所以看完书后,找一两道相关的题做。

以上是七品教育整理的考“软考”的软件设计师 该看什么书?全部内容。