前言:我们精心挑选了数篇优质计算机科研论文文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
从研究生导师反馈的情况来看,硕士生也存在着同样的问题,学生软件开发能力差、没有系统化软件设计的概念、在参与科研项目过程中无法自如地进行相应的分析和设计、只能编写一些特定的小程序等,这些几乎是计算机类本科毕业生的一个通病。一方面,当前的计算机专业毕业生培养没有达到理想的目标,另一方面社会需求对计算机软件人才的工程化素养提出了更高的要求,而目前的教学培养现状还未能达到这样的要求。究其原因,目前的教学环节过多地受到传统思维的约束,许多高校虽然在多年的教学工作中积累了大量的经验,加强了实践环节的培养,合理地梳理出明晰的课程体系和教学思路,但在整个教学培养过程中没有将工程化的思路贯穿始终,使软件工程思想的培养局限在个别课程中,没有形成系统,从而限制了学生工程化素养的养成以及高校教学师资资源的充分发挥。笔者针对计算机专业的培养特点及行业现状,结合普通高校计算机专业软件人才实际情况,提出一种全新的软件工程师的系统化培养方案,即充分利用学校科研团队现有的资源及在大型科研项目方面成功的经验,形成系统化的计算机专业培养方案和思路,着力于培养学生软件开发能力;重点研究如何将软件工程的指导思想贯穿于本科教育培养的始终,系统化培养学生的工程化素养,使毕业生更容易融入社会,为后续工作打下坚实的基础;采用项目驱动的思路充分发挥团队在大型科研项目中的成功经验,将具体的项目分解到学生各门课程的学习和实践环节中,让学生在细节中学习,最终又能宏观统筹集成为一个实际的项目,从而学以致用;最终形成实际工程项目驱动的、软件工程思想指导的系统化培养软件人才的基本思路。
2用软件工程的思想贯穿各门主干课程的教学实践,系统化培养学生软件实践能力
在现有的课程体系下,我们试图找出其中最直接影响学生软件开发能力的各门主干课程,将软件工程的思想贯穿其中,用软件开发生命周期的5个阶段(系统规划、分析、设计、实施、运行和维护)指导各门课程的教学实践,并着重研究每门课程在整个生命周期中的重要地位和作用,以及该门课程应该承担的具体培养工作。在此基础上,重点研究各门课程之间如何更好地衔接,系统化地构架学生的软件开发知识体系。
3用科研指导专业教学的具体实践
高校科研机构所承担的科研项目是一项宝贵的财富,学生也迫切希望早日加入到科研队伍中来,而承担科研项目的骨干力量与学生的教授者之间往往密不可分,甚至是同一批人。这给我们带来新的启示,现有的科研项目正是对学生进行实践教学的生动教材。然而,实际的科研项目往往都是相对复杂的大型系统,对初学者来说难以理清头绪。如何按照各门课程的特点将大型科研项目分解、简化成一个个子系统,渗透在各门主干课程的教学实践中,让学生循序渐进地参与到大型科研项目的开发中,既便于学生学习掌握,也有利于随时采用科研项目实战训练,修正课堂教学方法及方向,实现教学与科研的相互协调,最终达到以培养软件工程型人才为目标的闭环控制,这是亟待解决的问题。
3.1科研项目的开发分解成子系统渗透到各门主干课程的教学实践中,细化各门课程实验环节的开设,形成项目驱动的软件人才培养方案
实施过程中,我们选取智能工程实验室完成的石化行业大型智能建模优化软件平台作为经典案例。该平台是一个集数据预处理、过程建模、过程优化等多项功能,面向石化行业的智能集成化系统平台。教师首先从功能上对其分解,梳理出数据采集、预处理、输入解析、数据建模、优化算法、数据挖掘等模块,将这些模块渗透到各门主干课程的教学中,以子系统的形式作为各门课程实践环节中的重要训练项目。下面以数据预处理模块为例,介绍模块与课程之间的关系。对采集到的数据需要进行初步的处理,并存储到数据库中,这一工作可以放在数据库原理、算法与数据结构、程序设计等课程中作为实例讲解。由于采集来的数据是真实的工业过程数据,这些数据受到各种噪声的干扰、仪表故障或者数据传输错误等原因的影响,存在很多噪声数据、冗余数据、缺失数据和不一致数据,因此,需要采用各种算法进行预处理,如记录删除法、均值填充法、中值填充法和K最邻近距离填充法等。这些都可以渗透到算法设计课程中。处理好的数据如何进行存储这部分知识可以渗透到数据库原理课程中讲解。教师根据后续的应用需求向学生介绍选择哪种数据库工具、采用什么样的存储方式、怎样设计数据库等。在这一过程中,必然涉及程序设计的内容,如均值填充法、中值填充法等相对简单的算法,可以让学生了解基本算法原理后,进行程序设计的实现。带着这些实际的问题进行课程的学习,显然会大大提高学生的学习效率。
3.2做好子系统的集成与拼装,用大型项目的科研实践完善学生的学习过程
在软件方向的学习进程中,随着各门主干课程学习的完成,各子系统逐个开发出来,这些子系统可以作为后续软件工程系列课程的重要实践内容。例如建模优化平台项目总体上采用了三层结构,这将成为软件体系结构课程中重要的典型实例,并以此集成整个系统。软件工程等课程的开设将从理论的层面更系统地对前序课程中渗透的软件工程思想予以科学的总结归纳和提高,同时补充大量前序课程中还未涉及的工程化知识,查漏补缺,为走入工作岗位或进一步的科学研究打下坚实的基础。
4关键问题的解决
在整个方案的实施过程中,指导思想的落实是重中之重,需要学院、系部等行政机构给予必要的支持和配合,才能整合整个计算机课程体系,充分协调好教师与教师之间、课程与课程之间的关系。在学校的实践过程中,我们组织全系大大小小的相关课程研讨、集体备课多达20余次,大会确定思路,小会细化方案,真正将软件工程的思想落实到各门主干课程的教学与实践环节中,最终保证方案的有效实施。其次,学校组织专门的骨干力量对经典的大型工程项目进行合理的分解和集成。完成此项工作需要相关人员既熟悉工程项目,又宏观把握整个计算机教学体系。在此基础上,对全系相关课程教师进行培训和研讨,将正常知识点的教学与工程素养的培养相结合,从而将实际企业工程项目转化为教学资源,真正实现科技创新对教学的促进。
5结语
论文摘要:计算科学主要讲述了一种科学的思想方法,计算科学的基本概念、基本知识它的发展主线、学科分支、还有计算科学的特点、发展规律和趋势。
引言:随着存储程序式通用电子计算机在上世纪40年代的诞生,和计算科学的快速发展以及取得的大量成果。计算科学这一学科也也应运而生。《计算科学导论》正如此书的名字,此书很好的诠释了计算科学这一学科,并且指导了我们应如何去学好这一学科。使得我们收获颇多。并且让我深深的反思了我的大学生活。正如赵老师书中所讲的:“计算科学是年轻人的科学,一旦你选择了计算科学作为你为之奋斗的专业类领域,就等于你选择了一条布满荆棘的道路。一个有志于从事计算科学研究与开发的学生,必须在大学几年的学习中,打下坚实的基础,才有可能在将来学科的高速发展中,或在计算机产品的开发和快速更新换代中有所作为。
一什么是计算科学和它的来历
计算科学主要是对描述和变换信息的算法过程,包括其理论、分析、设计、效率分析、实现和应用的系统研究。全部计算科学的基本问题是,什么能(有效的)自动运行,什么不能(有效的)自动运行。本科学来源于对数理逻辑、计算模型、算法理论、自动计算机器的研究,形成于20世纪30年代的后期。
随着存储程序式通用电子计算机在上世纪40年代的诞生,人类使用自动计算装置代替人的人工计算和手工劳动的梦想成为现实。计算科学的快速发展以也取得大量成果,计算科学这一学科也也应运而生。
二计算科学的发展
a、首先先介绍图灵机
图灵机的发明打开了现代计算机的大门和发展之路。图灵机通过一条两端可无限延长的袋子,一个读写头和一组控制读写头的(控制器)组成它有一个状态集和符号集,而此符号集一般只使用0和1两个符号。而就是这个简洁的结构和运行原理隐含了存储程序的原始思想,深刻的揭示了现代通用电子数字计算机的核心内容。现在通用的计算机是电子数字计算机,而电子数字计算机的发展是建立在图灵机的基础之上。他的二进制思想使计算机的制作的简化成只需两个稳定态的元器件。这在今后的计算机制作上无论是二极管或集成电路上都显示了明显的优越性。
b、计算机带动的计算学科
1946年随着现代意义上的电子数字计算机ENIAC的诞生。掀起了社会快速发展的崭新一页。计算机工作和运行就摆在了人们的面前。
1、计算机语言
我们要用计算机求解一个问题,必须事先编好程序。因此就出现了最早的机器指令和汇编语言。20世纪50年代后,计算机的发展步入了实用化的阶段。然而,在最初的应用中,人们普遍感到使用机器指令编制程序不仅效率低下,而且十分别扭,也不利于交流和软件维护,复杂程序查找错误尤其困难,因此,软件开发急需一种高级的类似于自然语言那样的程序设计语言。1952年,第一个程序设计语言ShortCode出现。两年后,Fortran问世。作为一种面向科学计算的高级程序设计语言,Fortran的最大功绩在于牢固地树立了高级语言的地位,并使之成为世界通用的程序设计语言。Algol60的诞生是计算机语言的研究成为一门科学的标志。该语言的文本中提出了一整套的新概念,如变量的类型说明和作用域规则、过程的递归性及参数传递机制等。而且,它是第一个用严格的语法规则——巴科斯范式(BNF)定义语言文法的高级语言。还有用于支持结构化程序设计的PASCAL语言,适合于军队各方面应用的大型通用程序设计语言ADA,支持并发程序设计的MODULA-2,支持逻辑程序设计的PROLOG语言,支持人工智能程序设计的LISP语言,支持面积对象程序变换的SMALLTALK、C等。
2、计算机系统和软件开发方法
现代意义上的计算机绝不是一个简单的计算机了而也包括了软件(系统软件、应用软件)。各种各样的软件使得计算机的用途大大增强。而软件开发也成为了一个重要课题和发展方向。软件开发的理论基础即是计算模型。随着计算机网络、分布式处理和多媒体的发展。在各种高级程序设计语言中增加并发机构以支持分布式程序设计,在语言中通过扩展绘图子程序以支持计算机图形学程序设计在程序设计语言中已非常的流行。之后,在模数/数模转换等接口技术和数据库技术的支持下,通过扩展高级语言的程序库又实现了多媒体程序设计的构想。进入20世纪90年代之后,并行计算机和分布式大规模异质计算机网络的发展又将并行程序设计语言、并行编译程序、并行操作系统、并行与分布式数据库系统等试行软件的开发的关键技术依然与高级语言和计算模型密切相关,如各种并行、并发程序设计语言,进程代数,PETRI网等,它们正是软件开发方法和技术的研究中支持不同阶段软件开发的程序设计语言和支持这些软件开发方法和技术的理论基础----计算模型
3、计算机图形学
在计算机的硬件的迅速发展中。随着它的存储容量的增大,也掀起了计算机的巨大改革。计算机图形学、图像处理技术的发展,促使图形化界面的出现。计算机图形学是使用计算机辅助产生图形并对图形进行处理的科学。并由此推动了计算机辅助设计(CAD)、计算机辅助教学(CAI)、计算机辅助信息处理、计算机辅助测试(CAT)等方向的发展。图形化界面的出现,彻底改变了在一个黑色的DOS窗口前敲代码输入控制命令的时代。同时也成就了一个伟大的公司Microsoft。
4、计算机网络
随着用户迫切需要实现不同计算机上的软硬件和信息资源共享。网络就在我们的需求中诞生了。网络的发展和信息资源的交换使每台计算都变成了网络计算机。这也促进计算机的发展和广泛应用。
三计算机学科的主线及发展方向
围绕着学科基本问题而展开的大量具体研究,形成学科发展的主流方向与学科发展主线和学科自身的知识组织结构。计算学科内容按照基础理论、基本开发技术、应用以及他们与硬件设备联系的紧密程度分成三个层面:
1、计算科学应用层
它包括人工智能应用与系统,信息、管理与决策系统,移动计算,计划可视化,科学计算机等计算机应用的各个方向。
2、计算科学的专业基础层
它是为应用层提供技术和环境的一个层面,包括软件开发方法学,计算机网络与通信技术,程序设计科学,计算机体系结构、电子计算机系统基础。
3、计算科学的基础层
它包括计算科学的数学理论,高等逻辑等内容。其中计算的数学理论涵盖可计算性与计算复杂性理论形式语言与计算机理论等。
四计算机的网络的发展及网络安全
(1)计算机网络与病毒
一个现代计算机被定义为包含存储器、处理器、功能部件、互联网络、汇编程序、编译程序、操作系统、外部设备、通信通道等内容的系统。
通过上面定义,我们发现互联网络也被加入到计算机当中。说明了网络的重要以及普及性。21世纪是信息时代。信息已成为一种重要的战略资。信息科学成为最活跃的领域之一,信息技术改变着人们的生活方式。现在互联网络已经广泛应用于科研、教育、企业生产、与经营管理、信息服务等各个方面。全世界的互联网Internet正在爆炸性的扩大,已经成为覆盖全球的信息基础设施之一。
因为互联网的快速发展与应用,我们各行各业都在使用计算机。信息安全也显得格外重要。而随着计算机网络的发展,计算机网络系统的安全受到严重的挑战,来自计算机病毒和黑客的攻击及其他方面的威胁也越来越大。其中计算机病毒更是很难根治的主要威胁之一。计算机病毒给我们带来的负面影响和损失是刻骨铭心的,譬如1999年爆发的CIH病毒以及2003年元月的蠕虫王病毒等都给广大用户带来巨大的损失。
我们想更好的让计算机为我们服务,我们就必须很好的利用它,利用网络。同时我们也应该建立起自己的防护措施,以抵抗外来信息的侵入,保护我们的信息不受攻击和破坏。
(2)计算机病毒及它的防范措施:
计算机病毒是一组通过复制自身来感染其它软件的程序。当程序运行时,嵌入的病毒也随之运行并感染其它程序。一些病毒不带有恶意攻击性编码,但更多的病毒携带毒码,一旦被事先设定好的环境激发,即可感染和破坏。
<一>、病毒的入侵方式
1.无线电方式。主要是通过无线电把病毒码发射到对方电子系统中。此方式是计算机病毒注入的最佳方式,同时技术难度也最大。可能的途径有:①直接向对方电子系统的无线电接收器或设备发射,使接收器对其进行处理并把病毒传染到目标机上。②冒充合法无线传输数据。根据得到的或使用标准的无线电传输协议和数据格式,发射病毒码,使之能够混在合法传输信号中,进入接收器,进而进人信息网络。③寻找对方信息系统保护最差的地方进行病毒注放。通过对方未保护的数据链路,将病毒传染到被保护的链路或目标中。
2.“固化”式方法。即把病毒事先存放在硬件(如芯片)和软件中,然后把此硬件和软件直接或间接交付给对方,使病毒直接传染给对方电子系统,在需要时将其激活,达到攻击目的。这种攻击方法十分隐蔽,即使芯片或组件被彻底检查,也很难保证其没有其他特殊功能。目前,我国很多计算机组件依赖进口,困此,很容易受到芯片的攻击。
3.后门攻击方式。后门,是计算机安全系统中的一个小洞,由软件设计师或维护人发明,允许知道其存在的人绕过正常安全防护措施进入系统。攻击后门的形式有许多种,如控制电磁脉冲可将病毒注入目标系统。计算机入侵者就常通过后门进行攻击,如目前普遍使用的WINDOWS98,就存在这样的后门。
4.数据控制链侵入方式。随着因特网技术的广泛应用,使计算机病毒通过计算机系统的数据控制链侵入成为可能。使用远程修改技术,可以很容易地改变数据控制链的正常路径。
<二>病毒攻击的防范的对策
1.建立有效的计算机病毒防护体系。有效的计算机病毒防护体系应包括多个防护层。一是访问控制层;二是病毒检测层;三是病毒遏制层;四是病毒清除层;五是系统恢复层;六是应急计划层。上述六层计算机防护体系,须有有效的硬件和软件技术的支持,如安全设计及规范操作。超级秘书网
2.严把收硬件安全关。国家的机密信息系统所用设备和系列产品,应建立自己的生产企业,实现计算机的国产化、系列化;对引进的计算机系统要在进行安全性检查后才能启用,以预防和限制计算机病毒伺机入侵。
3.防止电磁辐射和电磁泄露。采取电磁屏蔽的方法,阻断电磁波辐射,这样,不仅可以达到防止计算机信息泄露的目的,而且可以防止“电磁辐射式”病毒的攻击。
4.加强计算机应急反应分队建设。应成立自动化系统安全支援分队,以解决计算机防御性的有关问题。
很多公司都有因为电脑被入侵而遭受严重经济损失的惨痛经历,不少普通用户也未能避免电脑被破坏的厄运,造成如此大损失的并不一定都是技术高超的入侵者所为,小小的字符串带给我们的损失已经太多。因此,如果你是数据库程序开发人员、如果你是系统级应用程序开发人员、如果你是高级计算机用户、如果你是论坛管理人员......请密切注意有关字符漏洞以及其他各类漏洞的最新消息及其补丁,及时在你的程序中写入防范最新字符漏洞攻击的安全检查代码并为你的系统安装最新的补丁会让你远离字符带来的危险。经常杀毒,注意外来设备在计算机上的使用和计算机对外网的链接。也可以大大有效的避免计算机被攻击。
五总结
在学了计算科学导论之后,让我更深入的了解了我将来要从事的学科。计算科学导论指导着我们该怎么学习计算机。让我更清楚的知道我们信息安全专业的方向。正如计算科学这座大楼一样,在不断的成长。信息安全也必将随着网络的进一步发展而更多的被人们重视。总之学习了这门课之后让我受益匪浅,也知道自己应该好好努力,争取在自己的专业领域上有所成就。
参考文献:
1、《计算科学导论》(第三版),赵志琢著,科学出版社2004版
2、《计算机病毒分析与对抗》傅建明彭国军张焕国编著武汉大学出版社2004版
关键词:基础知识;适应性;能力培养
随着计算机及网络技术发展的日新月异,计算机的应用也逐渐深入到各行各业,掌握计算机基础理论知识和基本操作技能已成为各级各类职业学校学生将来进入工作岗位的必备条件。因此,在技工学校强化计算机基础教学是十分重要的。
一、抓好基础知识教学
俗话说得好“万丈高楼从地起”。在计算机无穷无尽的知识领域内,掌握基础知识是学好计算机、用好计算机的关键所在。将计算机最基本的知识教给学生,让学生对计算机有一个整体概念。比如说,在Windows图形用户界面环境中,操控鼠标就能够操控Windows的各种对象,也就是说操控Windows就是操控电脑。那么要让学生灵活运用鼠标操控电脑就必须让学生掌握鼠标操作的基本知识。另外,计算机教育是技术性和实践性很强的一门课程,有些问题单凭教师讲解,很难让学生理解掌握。如何使学生打下坚实的基础呢?我们可以利用技能操作来巩固基础知识。譬如在讲五笔输入法这课时,我们只需要在理论课上讲清五笔规律和拆字规则,再通过上机操作进行强化训练,将所讲的理论在实践中得到应用,两者通过动手实际操作而联系起来,这样,基础知识扎实了,输入速度也逐渐提高了。
二、注重学生能力的培养
技工学校是培养高技能人才的基地,为了更好地增强劳动者的就业能力和创业能力,使劳动者更多更好地掌握计算机操作技能,使其具有较好的专业基础知识和较强的专业实践操作技能,在教学过程中就更应注重培养学生的以下几种能力。
1.自学能力。计算机发展十分迅猛,更新速度加快,硬件技术不断推陈出新,软件版本不断升级,因此培养学生的自学能力就显得尤为重要了。计算机的教学不同于其他基础课程具有稳定性,有许许多多新的软件,教师还没来得及讲解,就已经被淘汰了。像我们计算机专业的老师,大学学的是DOS、Windows97、98系统等,现在教的是WindowsXP、2003系统,新系统的掌握靠的就是自学。当你在教学生Windows2003的时候,WindowVista系统又普及了。因此,学生要想跟上时代的步伐,就不得不加强培养自学能力。教会学生自强不息,就等于给了他们生命的茁壮和饱满。在掌握了基础的理论知识之后,充分、深刻领会其含义,加以升华,有计划地进行自学,这样才能真正的做到“无师自通”。
2.实践能力。要想掌握真正的本领,实践是必不可少的。计算机的操作就是一种实践过程,它既是一种现代高科技机器操作的训练,也是一种对理论知识掌握的检验。通过操作,可以提高对计算机的驾驭能力,熟练掌握各种操作技巧和技能,为以后更好地利用现代化的信息手段打下坚实的基础。
在实际教学中,有些问题理论上老是无法讲清,或者说讲完也是模棱两可的,很抽象,但只要一上机,鼠标一点,既直观又生动,学生易于掌握。因而教学应采用在多媒体教室,微机边演示学生边操作,实现一体化教学。这样一来,既提高了学生的实践能力,也帮助学生理清了思路,把握了重点,同时对模棱两可的问题还可上机实践。
3.创新能力。所有优秀的教师都希望自己的学生超过自己,也希望以后的学生再超过自己教过的学生,这符合社会的发展。在计算机教学中,学生的创新能力,主要表现在创造性地完成学习任务的活动中。为学生提供的一切教学实践活动,既可以成为培养和发展学生创造力的环境和条件,也可以成为阻碍学生创造的精神束缚。因此,在计算机教学过程中,要鼓励学生学会大胆的去猜想、判断,要有意识地加强创造性的计算机活动,在活动中养成学生勤思考的习惯,碰到问题要问“为什么”,解决问题后要进行反思,总结活动经验。在学习中学会产生疑问,培养学生不受固定模式约束的能力,并帮助学生去积极克服思维定式,要将其猜想作为逻辑推理的一种形式,培养学生进行举一反三的能力。
总之,计算机教学就是要认准方向,夯实理论基础,注重学生素质的培养。这符合职业教育对学生培训的要求,也是人才市场对劳动者条件的基本需求,只有这样才能满足社会对职业教育的要求,才能有职业教育发展的空间,这才是其教学的意义。
参考文献:
[1]谢希仁.计算机网络[M].大连:大连理工大学出版社,2004.