摘要
通过对《计算机科学导论》的学习,对计算机科学与技术专业有了一定的认识。本文主要写了对计算机科学与技术专业的认识和学习计划、对离散数学在计算机科学中的重要性的认识、对软件工程的认识和理解和计算机硬件系统的结构和工作过程。学完这门课之后自己对大学四年的一些基本规划以及对未来的畅想。关键字
计算机科学导论、计算机科学与技术专业、离散数学、软件工程、计算机硬件系统结构、大学规划、未来畅想
一、引言
计算机,20世纪最辉煌的成就之一,诞生不过仅仅60多年,却给人类的生产和生活带来了巨大的变化,它的应用涉及社会的各个领域。如今,随着个人计算机的普及,人类对于计算机的依赖性日益增强。计算机将人类带入了信息时代,在这高速发展的信息时代,计算机作为人类获取信息、处理信息的重要工具,就显得尤为重要。在这飞速发展的时代,想要更好的发展,单单能够操作计算机已明显不能满足社会发展的需要,还必须对计算机有更深刻的认识,对计算机相关的知识有一定的了解。
作为一名计算机科学与技术专业的学生,我们需要对计算学科有更系统的认识。掌握计算机的基本理论
、基本知识,对计算机学科有了全局的认识之后,才能有目的的向更深的领域发展,才能取得成绩,推动计算机的发展,为社会发展贡献一份力。
通过《计算机科学导论》这门课程的学习,对计算机科学的核心内容都有一定的认识,同时对计算机科学与技术这一专业有了更加深刻的认识,增加自己对于所选专业的兴趣,为以后的学习注入了动力。在我国这样一个发展中国家,计算机才只是刚刚起步而已,很多方面的技术还是比较缺乏的,很多硬件都是用的外国的技术,一些高级的软件、系统也都是源自国外的。在如今复杂多变的国际环境下,如果失去了这些技术支持,对国家的发展必然造成巨大的影响,所以加快我国计算机领域的发展是迫在眉睫的,这不仅是国家的事,更是我们每一个公民的责任。因此,作为计算机科学与技术的学生,我们不仅是为我们自身的发展而努力学好专业,更要有危机感、责任感。
《计算机科学导论》这门课将我们引入计算机的世界,通过这门课的学习,我们重新认识了计算机,对计算机的起源与发展、计算机体系结构、程序设计、算法、软件工程、操作系统、人工智能以及网络应用都有了更专业的认识,全局的了解了计算机领域,为我们以后的发展指出了方向,同时也培养了我们对计算机的兴趣,为以后的学习奠定了基础。
以下是我通过《计算机科学导论》这门课的学习后对于计算机科学与技术专业的认识和体会,以及一些计算机基础知识的理解。
二、对计算机科学与技术专业的认识、体会
1、计算机科学与技术学科的形成与发展
计算机科学是从电子学、科学、数理逻辑和计算数学的交界处发展起来的。在20世纪50年代初到60年代中期,数值分析、开关理论、逻辑设计、计算模型构成了这一领域的核心,而把操作系统、编译器、数据库、网络、处理器硬件作为其应用。20世纪80年代及90年代初期开展的关于计算机科学教育的争论,重点都放在如何讲授问题求解技巧及编程语言的选择上,而忽略了计算机科学教
育目的本身。
CC2005和CCC2002教程鼓励在计算机科学和工程中教学计划的多样性,并要求有公共内核,把学科所包含的教学内容归纳为14个知识体,提炼出了更精简的核心知识单元。在技术方面增加了网络技术及应用、软件安全及嵌入式系统等内容;在课程方面,除了提出对算法、离散结构应加强外,还将计算机学科中许多以前的研究成果列入本科课程。
为了适应目前技术和应用的需要,CC2005和CCC2002教程提出把原来的计算学科划分为计算机科学、计算机工程、软件工程、信息系统4个方向,并分别制定各自的教学计划纲要。从课程体系的发展来看,计算机科学课程体系模型一直在推陈出新,不断发展。伴随这种过程,受教育者终身学习变得越来
越重要,面对终身学习和职业常变的未来,必须具有适应新模式的能力,提高自身素质修养,严格要求自己。
2、计算机科学与技术学科的根本问题及研究范围
计算机科学与技术学科的根本问题是什么能被有效地自动化。问题的符号表示及其处理过程的机械化、严格化的固有特性,决定了数学是计算机科学与技术的重要基础之一,数学及其形式化描述、严密的表达和计算是计算机科学与技术学科所用的重要工具,建立物理符号系统并对其实施变换是计算机科学与技术进行问题描述和求解的重要手段。
计算机科学与技术学科的研究范畴包括计算机理论、硬件、软件、网络及应用等,按照研究的内容,也可以划分为基础理论、专业基础和应用。计算机理论的研究包括离散数学、算法分析理论、形式语言与自动化理论、程序设计语言理论、程序设计方法学;计算机硬件的研究包括元器件与储存介质、微电子技术、计算机组成原理、微型计算机技术、计算机体系结构;计算机软件的研究包括程序设计语言的设计、数据结构与算法、程序设计语言翻译系统、操作系统、数据库系统、算法设计与分析、软件工程学、可视化技术;计算机网络的研究包括网络结构、数据通信与网络协议、网络服务、网络安全;计算机应用的研究、软件开发工具、完善既有的应用系统、开拓新的应用领域、人-机工程、研究人与计算机的交互和协同技术。
3、计算机科学与技术课程体系的核心内容
1)离散结构
2)程序设计基础
3)算法与复杂性
4)体系结构与组织
5)操作系统
6)网络计算
7)程序设计语言
8)人机交互
9)图形学和可视化计算
10)智能系统
11)信息管理数据结构与算法论文
12)社会和职业问题
13)软件工程
14)数值计算科学
4.学习计算机科学与技术专业的体会和计划
一学期很快就过去的,通过一学期的学习,尤其是专业课的学习,对本专业的课程有了初步的了解。这学期我们主要学习了C语言,通过一学期的学习,对大学课程的学习方式大致有了一点的了解。大学的学习已自主学习为主,老师上课讲的内容较多,所以要求我们要做好课前预习,课后复习的工作,平时还要自己看一些课外资料来补充知识。计算机的学习不能只停留在弄懂书本上的知识,更要积极动手上机操作,只有这样才能更快弄懂。
为了更好的学习计算机科学与技术这门课,为了将来可以更好的发挥才能,贡献社会,我对大学四年的学习有一个大致的规划。在大一时期,我要努力学好公共基础课,为以后的学习打下坚实的基础。因为很多的公共基础课与以后的专业课有很大的联系,如高等数学,大学物理,程序设计基础等。在学习这些公共基础课的同时,我还准备自己在课余时间里学习一些相关的专业知识,更好的去了解计算机专业
的各个学科方向,及时发现自己的兴趣。对于大二的学习,我认为大二时决定自己学习方向的时期,虽然要到大三才开始选择专业课方向,但是自己的兴趣及对学科方向的了解基本上都是在大二就形成了,所以对于大二的学习也必须十分重视。大二有一些专业基础课,这些事我们专业入门所必须掌握的课程,这些课程有离散数学,数据结构,数据库原理,计算机网络,计算机组成与系统结构等等。这些课程可能有一定的难度,所以我必须花更多的时间去学习。不仅仅是在课上,在课余时间也要花时间去钻研,遇到不懂得问题,要及时去请教同学或老师,或者去网上查相关资料,及时解决问题。在大三,学习更加深入,对我们的学习能力要求也更加高,所以我要锻炼自己的学习能力,努力学习专业课程,掌握该专业深层次的知识与技能。为以后的就业提供保障。到了大四,学习时间比较少,大部分时间用在实习和毕业设计上,所以我要抓紧不多的学习时间,不断巩固自己的知识,并且如果可以实习的话,我会抓住机会,努力提高自己的实践能力,尽量适应工作的流程与方法,为以后真正走上工作岗位积累宝贵经验。在毕业设计上,我也会认证对待,毕竟这是考察自己在大学四年里的学习成果,所以我会付出百分之百的努力去完成它,为自己的大学生涯画上一个完美的句号。
由于计算机领域是一个飞速发展的领域,仅仅依靠书本上的知识是远远不够的,所以,需要我们在课外不断通过自学来掌握更多的知识。首先,我会在空闲时间通过各种渠道去了解计算机领域的最新动态,让自己的思想紧跟计算机科学发展的步伐。其次,如果学有余力,我会在我选择的专业课外,自己看一些其他计算机专业的书,扩大自己的知识面,假如我可以掌握其他计算机专业的一些知识,这对我的全
面发展有很大帮助,也可以拓宽自己将来的择业宽度,并且企业也十分欢迎这样的复合型人才。学习知识的目的是应用,所以实际解决问题能力十分重要。因此,在整个学习过程中,我要不断提高自己的实践能力,那要如何去做呢?首先,在学习基础课时,有机会就将书本上学到的知识在实际中运用,多加练习,在不断练习的过程中既掌握知识,又掌握技能。比如在学习程序设计时,我可以在课余自己练习编程,不断熟悉编程的各个环节,这样才可以学的更好,学的更精。另外,我会积极参加各种学科活动,如学科竞赛,兴趣小组等。因为参加这些活动,一方面可以有机会展示自己的知识,发现不足,弥补不足。另一方面,在竞争与合作中,一个人的兴趣和斗志会更加强烈,这样更加有利于自身的进步。如果在活动中获得优异的成绩,还可以增强我们的自信心,更加有热情的投入到学习中去。因为学生以后有机会参加到老师的科研项目中去,我也十分希望能够有机会加入,所以我会为此做充分的准备,争取获得锻炼自己的机
会。
当然,计划赶不上变化,我会根据实际情况适时调整自己的计划的。总之无论今后的大学学习如何,我对未来总是充满信心与期待。
三、浅谈离散数学在计算机科学中的重要性
离散数学研究离散(变)量的结构及其相互关系,是计算机科学的理论基础。
在整个课程的学习过程中,由于要经常强调具有构造性特点的一系列问题解决方法,因此它非常重视“能行性”问题的研究:即要解决一个问题,不光要证明该问题解的存在性(连续数学只要做到这一步就基本上算解决问题了),还要给出解决该问题的解的步骤来。
我们知道在计算科学研究中,存在这样一条规律:一个问题,当它的描述及其求解方法或求解过程可以用构造性数学描述,而且该问题所涉及的论域为有穷,或虽为无穷但存在有穷表示时,那么该问题一定能用计算机来求解;反过来,凡是能用计算机求解的问题,也一定能将该问题的求解过程数学化,而且这种数学化是构造性的。从而计算学科的基本问题是“能行性”问题。
凡是与“能行性”有关的讨论,都是处理离散对象的。因为非离散对象(即连续对象),是很难进行“能行”处理的。因此,“能行性”这个计算学科的根本问题决定了计算机本身的结构和它处理的对象都是离散型的,甚至许多连续型问题也必须在转化为离散型问题以后才能被计算机处理。正是构造数学的构造性和离散性特征保证了计算方法的能行性,所以计算机科学与技术本质上是一门离散数学技术。离散数学是计算机科学和技术的重要理论基础之一,为计算学科各分支领域解决其基本问题提供了强有力的数学工具,在计算机科学与技术中有十分广泛的应用。
1998年秋,IEEE-CS和ACM联手组成任务组,开始了关于计算学科教学计划的CC2001的起草工作。经过3年多的工作,任务组于2001年12月提交了最终报告。CC2001将计算学科划分为14个主领域:离
散结构、程序设计基础、算法与复杂性、体系结构、操作系统、网络计算、程序设计语言、人机交互、图形学与可视化计算、智能系统、信息管理、软件工程、社会和职业的问题和科学计算。CC2001的一个特别之处是将离散数学从预备知识部分独立出来,列为学科的第一个主领域,以强调计算学科对它的依赖性。
《离散数学》所涉及的概念、方法和理论,大量地应用在“数字电路”、“编译原理”、“数据结构”、“操作系统”、“数据库系统”、“系统结构”、“容
错判断”、“算法的分析与设计”、“逻辑程序设计”、“软件工程”、“人工智能”、“多媒体技术”、“计算机网络”、“信息管理”、“信号处理”、“模式识别”、“数据加密”、“机器定理证明”、“形式语言与自动机”等计算科学的相关专业课程中,为这些专业课程的学习提供了重要的数学理论基础。更重要的是计算学科各专业的学生通过学习《离散数学》,可以使他们熟悉和习惯抽象的符号表示和演算形式,培养和训练我们掌握使用数学语言或符号系统处理问题的基本方法,提高我们的抽象思维和逻辑推理的能力。
数学系毕业的学生到软件企业中大多做软件设计与分析工作,而计算机系毕业的学生则以做程序员的居多,原因就在于数学系毕业的学生有很强的分析推理能力。这充分说明了抽象思维和逻辑推理能力的重要性。计算机系的学生学习离散数学的目的应该是:将抽象的理论再应用于实践,不但要掌握题目的解题方法,更要掌握解题思想;对于定理的学习:不是简单的应用,而是掌握证明过程即掌握定理的由来,
训练自己的推理能力。只有这样才达到了学习这门课程的目的:通过严格的训练,逐步实现思维方式的数学化。
四、浅谈对软件工程的认识
对于软件工程,不同的组织和专家有不同的定义。《计算机科学技术百科全书》中给出的定义是:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程的核心思想是把软件产品看作是一个像其他工业产品一样的工程产品来处理,同时,软件工程也注重不同于其他工业产品生产的一些特征,并针对软件的特点提出了许多有别于一般工业工程的技术的一些技术方法。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。那么,软件工程专业除了基础课外还需要学习哪些专业课程呢?这些专业课可能包括:
1.高级软件工程
2.软件设计技术
3.软件项目管理
4.面向对象技术
5.软件体系结构
6.软件开发环境与工具
7.软件质量保证与测试技术
8.需求分析与领域分析技术
9.大型数据库系统开发技术
10.信息安全技术
11.高级网络技术
12.软件过程改进与控制
13.多媒体技术

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。