身份证号码:42011119770123****
摘要:本文探讨了计算机科学与技术中的系统论及辩证法,包括物质和意识、联系与发展、时间和空间、理论和实践等范畴以及对立统一、质量互变、否定之否定等基本规律。应用上述理论阐述计算机软硬件系统、操作系统、程序设计语言与算法、计算机网络、计算机软硬件发展等方面存在的基本哲学问题,并将其应用于计算机教学,取得了较好的效果。
关键词:计算机;系统论;辩证法
在计算机相关专业的教学活动中,存在着重部分,轻整体等片面等违反系统论和辩证法的现象。这种现象的出现,主要是因为没有宏观的方法论来进行指导。国内已经有一些学者将系统论、辩证法以及计算机科学技术结合起来,对计算机科学与技术中的问题进行阐述。赵致琢等在计算科学导论中阐述了计算科学的意义、内容和方法,具体包括:什么是计算科学,计算科学发展主线和学科的基本问题,并将其应用于计算科学的教学计划和课程体系制定。董荣胜等阐述了计算学科中各主要领域发展的基本规律,揭示了各领域之间的内在联系,有助于人们对计算学科的深入理解。周长林等在操作系统课程中从最一般意义上给出了操作系统的基本理论,指出了资源共享和进程并发是操作系统的两个基本特性,操作系统的所有内容都是围绕资源和进程展开的。陈次白等应用对立统一思想分析了计算机科学与技术中存在的时间与空间、静态与动态、绝对与相对等问题。
1唯物辩证法的主要观点
1.1唯物论
唯物论认为,世界的本质是物质的。物质决定意识,意识对物质具有能动的反作用。物质处于永恒的运动之中,运动是绝对的、无条件的,静止是相对的、有条件的。时间和空间是运动著的物质的存在形式。
1.2唯物的辩证法
唯物的辩证法认为世界处于普遍联系和永恒发展之中。对立统一规律、质量互变规律和否定之否定规律是辩证法的基本规律。包括现象和本质、内容和形式、原因和结果、可能性和现实性、偶然性和必然性等若干个范畴。
1.3认识论唯物主义
认识论认为理论来源于实践,实践是理论的基础,相反理论可以指导实践。认识分为感性认识和理性认识,感性认识是理性认识的基础,理性认识是感性认识的升华。
2计算机科学与技术中的系统论与辩证法
2.1软件系统和硬件系统
计算机由硬件系统和软件系统组成。唯物辩证法认为,物质决定意识,意识对物质具有反作用。硬件相当于物质,软件相当于意识,二者相互影响、相互制约,处于动态平衡状态。好的硬件如果没有好的软件来配合,实际上是对硬件的一种浪费。好的软件如果没有好的硬件作依托,那么软件就无法发挥它的功能。硬件的发展能为软件的升级预留空间,软件的发展也对硬件的发展不断提出新的要求。计算机硬件系统的雏形是冯诺一曼模型,该模型由主机、输入系统和输出系统组成,其设计体现了系统学的思想。计算机软件系统的雏形是图灵机。图灵机实际上就是对0,1数据的操作,按中国古代哲学的观点,0和1分别表示阴和阳,二者对立统一,是表示信息的基本“细胞”。计算机所表现出来的各种文本、图像、动画、视频等信息都属于现象,而这些信息在底层实际上都是0,1组合,是以布尔逻辑作为理论基础的,这才是本质。
2.2操作系统
操作系统是计算机的灵魂,是整个计算机系统的“管家婆”,是软件和硬件之间连接的纽带,负责软硬件资源的协调和使用。资源共享和进程并发是操作系统的两个基本组成部分。资源总是有限的,进程的目标就是要使有限的资源发挥大的作用。通常情况下,应用软件向计算机系统请求使用资源,操作系统综合考虑效率、公平等情况,然后对各种请求进行协调,对各种资源进行分配。时间和空间是操作系统必须要考虑的因素。操作系统中有很多时间和空间相互结合的例子。虚拟存储技术(请求分页、请求分段、请求段页式)是以时间换空间的例子;在该技术中,访问时间增加了,但是扩充了主存的逻辑容量,使得大于主存容量的程序也可以得到执行。缓冲区技术、快表、外存分配方式中的索引分配都是以空间换时间的例子;在该技术中,本来需要在速度很慢的设备上进行输入输出的,但是从存储区域划出一部分做缓冲区,就可以减少访问时间。
2.3程序设计语言和算法
程序设计语言是实现算法的工具。程序总是在一定的时间和空间内运行。变量是一个程序的重要元素。以C语言为例,变量分为静态变量和自动变量,分别具有自己的作用域和生存期。在结构化程序设计中,对复杂问题进行分析的一个主要方法就是自顶向下,逐步细化。函数是结构化程序的基本组成部分。可以把函数看做系统,它由输入、输出和控制体三部分组成。函数输入就是函数参数表的参数,参数表是函数对外联系的通道;函数输出就是是函数的返回值。函数的控制体就是函数体。
在面向对象程序设计中,类和对象是两个基本的概念,二者是抽象和具体、共性与个性、一般和个别的关系。程序是由对象组成的,对象之间是有联系的(组合、继承等),对象之间相互协作完成某个问题的求解。这体现了世界是物质的以及事物是普遍联系的这一基本哲学思想。算法是正确求解问题的关键,一个好的算法除了要正确之外,还要求有较小的时间复杂度和空间复杂度。小的时间复杂度可能需要较高的空间复杂度,反之亦然,而这通常不能兼得。总之,在设计算法时要根据实际情况综合考虑时空关系,使设计的算法达到优。递归程序设计,是求解很多复杂问题的有效方法。所谓递归,就是根据事物整体与部分具有某种相似性的原理,反复调用自身,从而完成问题的求解。分治、回溯和动态规划都是基于递归这一思想。需要强调的是,面向对象程序设计不是对结构化程序设计的否定,他们之间具有紧密的联系。面向对象程序设计是结构化程序设计的继承和发展,结构化程序设计是面向对象程序设计的基础。面向对象程序设计终的落脚点仍是结构化程序设计。
2.4计算机网络
需求是技术发展的原动力。资源共享的需要是计算机网络技术发展的原动力。计算机网络本身就是一个系统,充分体现了世界是普遍联系的这一特征。网络中的各个实体之间存在异构,如何在异构的实体之间保证通讯的正常进行是计算机网络理论的关键问题。为此,在计算机网络中采用了“分层”的思想。在计算机网络的开放系统互联模型中,将信息传输过程分为7个层次,每一层相当于通讯过程的一个阶段,层与层之间通过接口进行联系,下层为上层提供服务。
2.5计算机软硬件产品的发展
在计算机发展的过程中,我们会发现一个现象,即一种产品通常有两个主流商家在做。各个产家之间在竞争中发展,没有竞争,就没有发展,竞争会促进技术的发展。各个产家在竞争中处于一种动态的平衡状态,一个平衡打破了,一定会产生一个新的平衡,市场会对其自动进行调解。这种发展的结果一方面给用户带来了利益,另一方面也促进了技术的进步。总之,计算机软硬件产品的发展是一个否定之否定的过程,各品牌产品不断从竞争对手中吸取营养和经验,对自身进行改进,推动技术的不断进步。
3结语
本文采用马克思主义哲学观点分析和阐述了计算机科学与技术中存在的系统论和辩证法等规律,涵盖了计算机硬件、操作系统、程序设计语言、计算机网络与计算机发展等各方面。将上述规律应用于计算机专业的教学和培养方案的制定,取得了良好的效果。计算机科学与技术将继续迅猛发展,但万变不离其宗,采用系统论与辩证法分析计算机发展中出现的新问题、新技术仍会得到有意义的结论。
参考文献:
[1]桂起权,任晓明.计算机科学哲学的核心理念[J].淮阴师范学院学报(哲学社会科学版),2010,(01).
[2]吴亚琼.计算机技术发展的哲学思考[J].湖北成人教育学院学报,2008,(01).
[3]刘钢.机器、思维与信息的哲学考察与莱布尼茨的二进制级数和现代计算机科学的关系[J].心智与计算,2007,(01).