1.3.3 课程体系
课程体系是育人活动的指导思想,是培养目标的具体化和依托,它规定了培养目标实施的规划方案。课程体系是实现培养目标的载体,是保障和提高教育质量的关键。
1. 课程体系概述
课程体系是指在一定的教育价值理念指导下,将课程的各个构成要素加以排列组合,使各个课程要素在动态过程中统一指向课程体系目标实现的系统。
(1)培养目标。计算机专业旨在培养和造就适应社会主义现代化建设需要,德智体全面发展、基础扎实、知识面宽、能力强、素质高、具有创新精神,系统掌握计算机硬件、软件的基本理论与应用的基本技能,具有较强的实践能力,能在企事业单位、政府机关、行政管理部门从事计算机技术研究和应用,软硬件和网络技术的开发,计算机管理和维护的应用型专业技术人才。修业年限4年。授予工学或理学学士学位。
(2)专业培养要求。本专业学生主要学习计算机科学与技术方面的基本理论和基本知识,进行计算机研究与应用的基本训练,使其具有研究和开发计算机系统的基本能力。本科毕业生应具备以下几方面的知识和能力。
● 掌握计算机科学与技术的基本理论、基本知识。
● 掌握计算机系统的分析和设计的基本方法。
● 具有研究开发计算机软硬件的基本能力。
● 了解与计算机有关的法规。
● 了解计算机科学与技术的发展动态。
● 掌握文献检索、资料查询的基本方法,具有获取信息的能力。
(3)主要课程。本专业的主干学科和实践性教学环节简介如下。
● 主干课程:电路原理、模拟电子技术、数字逻辑、数值分析、计算机原理、微型计算机技术、计算机系统结构、计算机网络、高级语言、汇编语言、数据结构、操作系统、数据库原理、编译原理、图形学、人工智能、计算方法、离散数学、概率统计、线性代数、算法设计与分析、人机交互、面向对象方法、计算机英语等。
● 主要实践性教学环节:包括电子工艺实习、硬件部件设计及调试、计算机基础训练、课程设计、计算机工程实践、生产实习、毕业设计(论文)等。
(4)个人发展方向与定位。计算机科学与技术类专业毕业生的职业发展路线基本上有如下两条。
● 第一类路线:纯科学路线,也称科学型。信息产业是新兴产业,对人才提出了更高的要求。这类学生本科毕业后,一般想继续深造,攻读硕士或博士学位,甚至进入博士后进行研究工作。其未来的职业定位于计算机科学研究工作。
● 第二类路线:纯技术路线,也称工程或应用型。这类学生本科毕业后,开始一般从事编写程序的工作,但这是一项脑力劳动强度非常大的工作,随着年龄的增长,很多从事这个行业的专业人才往往会感到力不从心,因而由技术人才转型到管理类人才不失为一个很好的选择。
2. 知识点要求
计算机科学的课程大致分为计算机理论、计算机硬件、计算机软件和计算机网络4部分。
(1)计算机理论。计算机理论是构建计算机学科的基石,主要涉及如下几个方面。
● 离散数学。由于计算机所处理的对象是离散型的,所以离散数学是计算机科学的基础,主要研究数理逻辑、集合论、近世代数和图论等。
● 算法分析理论。主要研究算法设计与分析中的数学方法与理论,如组合数学、概率论、数理统计等,用于分析算法的时间复杂性和空间复杂性。
● 形式语言与自动机理论。研究程序设计及自然语言的形式化定义、分类、结构等有关理论以及识别各类语言的形式化模型(自动机模型)及其相互关系。
● 程序设计语言理论。运用数学和计算机科学的理论研究程序设计语言的基本规律,包括形式语言文法理论、形式语义学(如代数语义、公理语义、指称语义等)和计算机语言学等。
● 程序设计方法学。研究如何从好结构的程序定义出发,通过对构成程序的基本结构的分析,给出能保证程序高质量的各种程序设计规范化方法,并研究程序正确性证明理论、形式化规格技术、形式化验证技术等。
(2)计算机硬件。计算机硬件是计算机系统中由电子、机械和光电元件等组成的各种物理装置的总称。这些物理装置按系统结构的要求构成一个有机整体,为计算机软件运行提供物质基础。主要包括如下几个部分。
● 元器件与储存介质。研究构成计算机硬件的各类电子的、磁性的、机械的、超导的、光学的元器件和存储介质。
● 微电子技术。研究构成计算机硬件的各类集成电路、大规模集成电路、超大规模集成电路芯片的结构和制造技术等。
● 计算机组成原理。研究通用计算机的硬件组成以及运算器、控制器、存储器、输入和输出设备等各部件的构成和工作原理。
● 微型计算机技术。研究目前使用最为广泛的微型计算机的组成原理、结构、芯片、接口及其应用技术。
● 计算机体系结构。研究计算机软硬件的总体结构、计算机的各种新型体系结构(如并行处理机系统、精简指令系统计算机、共享储存结构计算机、阵列计算机、集群计算机、网络计算机、容错计算机等)以及进一步提高计算机性能的各种新技术。
(3)计算机软件。计算机软件是用户与硬件之间的接口界面,用户主要是通过软件与计算机进行交流。软件是计算机系统设计的重要依据。主要包含如下内容。
● 程序设计语言。根据实际需求设计新颖的程序设计语言,即程序设计语言的语法规则和语义规则。
● 数据结构与算法。研究数据的逻辑结构和物理结构以及它们之间的关系,并对这些结构做相应的运算,设计出实现这些运算的算法,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。常用的数据包括线性表、栈、队列、串、树、图等。相关的常用算法包括查找、内部排序、外部排序和文件管理等。
● 程序设计语言翻译系统。研究程序设计语言翻译系统(如编译语言)的基本理论、原理和实现技术,包括语法规律和语法规律的形式化定义、程序设计语言翻译系统的体系结构及其各模块(如词法分析、语法分析、中间代码生成、优化和目标代码生成)的实现技术。
● 操作系统。研究如何自动地对计算机系统的软硬件资源进行有效的管理,并最大限度地方便用户的使用。研究的内容包括进程管理、处理机管理、存储器管理、设备管理、文件管理,以及现代操作系统中的一些新技术(如多任务、多线程、多处理机环境、网络操作系统、图形用户界面等)。
● 数据库系统。主要研究数据模型以及数据库系统的实现技术,包括层次数据模型、网络数据模型、关系数据模型、E-R数据模型、面向对象数据模型、给予逻辑的数据模型、数据库语言、数据库管理系统、数据库的存储结构、査询处理、查询优化、事务管理、数据库安全性和完整性约束、数据库设计、数据库管理、数据库应用、分布式数据库系统等。
● 算法设计与分析。研究计算机及其相关领域中常用算法的设计方法,并分析这些算法的实践复杂性和空间复杂性,以评价算法的优劣。研究的主要内容包括算法设计的常用方法、排序算法、集合算法、图和网络的算法、几何问题算法、代数问题算法、串匹配算法、概率算法和并行算法等以及对这些算法的时间复杂性和空间复杂性的分析。
● 软件工程学。其是指导计算机软件开发和维护的工程学科,研究如何采用工程的概念、原理、技术和方法来开发和维护软件。研究的主要内容包括:软件生存周期方法学、结构化分析设计方法、快速原型法、面向对象方法、计算机辅助软件工程(CASE)等,并且详细论述了在软件生存周期中各个阶段所使用的技术。
● 可视化技术。可视化技术是研究如何用图形来直观地表征数据,即用计算机来生成、处理、显示能在屏幕上逼真运动的三维形体,并能与人进行交互式对话。该技术不仅要求计算结果的可视化,而且要求过程的可视化。可视化技术的广泛应用,使人们可以更加直观、全面地观察和分析数据。
(4)计算机网络。计算机网络技术是通信技术与计算机技术相结合的产物,是第三次科技革命最突出的核心技术。
● 网络结构。研究局域网、远程网、Internet等各种类型网络的拓扑结构和构成方法及接入方式。
● 数据通信与网络协议。研究实现网络上计算机之间进行数据通信的链接、原理技术以及通信双方必须共同遵守的各种规约。
● 网络服务。研究如何为计算机网络的用户提供方便的远程登录、文件传输、电子邮件、信息浏览、文档查询、网络新闻以及全球范围内的超媒体信息浏览服务。
● 网络安全。研究计算机网络的设备安全、软件安全、信息安全以及计算机病毒防治等技术,以提高计算机网络的可靠性和安全性。