Ⅰ it新技术新发展的论文范文
随着经济全球化和信息技术的日新月异,IT产业将得到迅猛发展,IT产业化将对世界经济结构产生巨大影响。下文是我整理的it新技术论文,希望能对大家有所帮助!
it新技术论文篇一:《浅析IT信息技术的应用及发展》
摘要:现代信息技术的普及带来了劳动生产率的提高,正从根本上改变人们的生产方式、生活方式乃至 文化 观念,促进世界各国产业结构升级,并成为了世界经济新的增长点。信息技术革命加快了劳动力与科技人才在不同产业、不同国家之间的流动,并促使企业经营管理、组织结构和人事制度发生深刻变革。现代信息技术的迅猛发展和全球信息化浪潮的掀起,促使人类走向新的文明。本文从现代信息技术发展与全球信息化背景着手,主要研究现代信息技术对现代 企业管理 的影响和对城市发展的影响
关键词:现代信息技术 全球信息化 现代企业管理 城市发展 物流产业发展
0 引言
现代社会中信息技术(IT)无处不在,信息技术产业化也已初具规模。随着经济全球化和信息技术的日新月异,IT产业将得到迅猛发展,IT产业化将对世界经济结构产生巨大影响。我们都知道,在现在的社会中,人们对IT信息技术已经不陌生,随着其新技术快速的发展,其甚至成为推动社会前进的杠杆,并已深人到社会生活的方方面面,信息技术推动生产力突破传统的束缚,实现跨越式发展,广泛渗透到经济和社会的各个领域。因此更应该成为人文社会科学家和哲学家们研究的重大时代课题。
随着信息技术的发展,企业的产品和生产过程正在被现代信息技术正在改变着,甚至企业和产业的发展也被现代信息技术改变着。做为一个企业管理者,要有敏锐的眼光和判断,应该知道怎样利用信息技术来为企业创造持久的竞争优势,同时也应该深刻认识到信息技术的广泛影响和深银者御刻含义。
因此,把信息技术看作是辅助或服务性的工具已经成为过时的观念,无疑,一场关系到企业生死存亡的技术革命已经到来,快速发展的信息技术正在改变着企业家们习以为常的经营之道。企业必须迎接挑战,我们必须引起足够的重视,以便立于不败之地。
1 现代信息技术发展与全球信息化背景
我们知道,随着微电子技术、计算机硬件与软件技术、信息 网络技术 、系统集成技术等现代信息技术的发展锋岩,信息产业逐渐成为知识经济时嫌卖代的先导产业。特别是20 世纪80 年代以来,世界信息产业高速发展。信息技术日新月异,其发展速度越来越快,有力地推动着社会生产力的发展和进步。
尤其在企业的发展中,信息技术起着越来越重要的作用,据有关统计资料表明,实施企业信息化可使企业大大提高工作效率,降低成本,例如:劳动生产力率提高10%一30%,库存降低30%一60%,流动资金周转速度提高60%一200%,新产品开发周期缩短90%以上。所以,对一个企业来讲,决定其生存和发展的关键之一是运用信息技术的能力和程度。
因此,许多国家认为提高生产率的最重要办法就是最优先发展信息技术。随着信息技术的发展,信息科学技术革命已变为科技发展与科技进步的核心和主流,可以这样说,在未来的经济竞争中,谁能拥有高度发达的信息科学技术,谁便迅速获得信息并使之转化为经济优势,谁就获得发展的主动权。据有关部门提供的资料,我国每生产一美元产品所消耗的能、原材料约为发达国家的二至五倍,而消耗的信息量却只有世界平均水平的十分之一。可见,发达国家在国民生产中大量的利用了无形的科技知识等信息资源,而我国生产的增长主要靠有形的物质资源消耗。
2 现代信息技术对现代企业管理的影响
2.1 信息技术对企业管理的作用
现代信息技术正在改变着产品和生产过程、企业和产业、甚至竞争本身的性质。把信息技术看作是辅助或服务性的工具已经成为过时的观念,管理者应该认识到信息技术的广泛影响和深刻含义,以及怎样利用信息技术来创造用力而持久的竞争优势。正是在这样的大背景下,信息技术就成为管理的一个重要对象,并且资讯管理上升到企业发展的战略地位。重视程度和原来远远不一样,与生产管理、营销管理、 财务管理 、人事管理和研发管理鼎足而立,因此企业管理者需要深刻认识到信息技术的作用,树立资讯意识,在企业中建立全面的资讯管理(Total Information Management)。
信息技术的崛起因其自身特有的经济技术特性而改变了社会经济发展的方方面面,管理作为经济发展中最重要的一环也必然深受其影响。信息技术不仅使整个社会经济结构发生了巨大变化,而且为企业的管理 方法 、手段注入了新的活力,并进一步推动了管理理论、管理思想的发展,导致了管理水平的大幅提升。
2.2 信息化建设人才的需求分析
信息化建设人才现在是企业紧缺的人才,企业要想生存、发展,增强在市场上的竞争力,就必须采用先进的现代化信息管理手段。目前我国大多数企业生产和经营和管理方面,电子商务软件、ERP软件以及CRM软件已正逐步地被使用,但由于信息部门仅重视软件的技术开发和设备维护,信息资源的管理显得非常薄弱,由于没有专门的信息化管理人才,需求定位出现偏差,使用效果并不理想。
因此对企业人员进行信息化培训,提高企业中普遍人群的信息化应用能力和核心技术,使之与先进的技术和管理理念同步,是当务之急。与大型企业相比,中小企业信息化面临的最大难题是信息化建设的人才匮乏,由于待遇和企业重视程度等因素决定了中小企业召到和留住高素质信息化建设人才比较困难。
2.3 建立企业网站、开展电子商务
网站和电子商务等手段,已经早被一些企业运用的炉火纯青,国际互联网作为近年崛起的网络技术革命的代表,其互联互通性不仅为人们的生活带来了便利,还为企业展出现广阔的市场发展前景。同传统媒介相比,企业网站作为一种新的形象传播途径,这样就可以帮助企业与消费者建立更亲密、更稳固的联系,对受众更具有亲和力与吸引力。因此,很多企业开始倾注更多的时间和精力,因为网站的易用性与实用性可全面充分地发挥品牌已经具有的价值,有必要采取更加行之有效的数字化策略来建立和提升网站形象,这一点已经被广大企业所深刻认识到。
2.4 信息技术与企业管理
我们知道,计算机信息技术的发展日新月异,其在企业的生产、管理、经营和财务等方面起着越来越重要的作用,它甚至决定了企业的竞争力水平,一个完整的企业信息管理系统应当至少包含三个层面的内容:
①业务运作层。简单的讲,它可以使资源得到最合理的配置,帮助企业合理的规划企业的所有运作资源,目的是得到最大限度的获利,在有限资源的前提下,帮助控制企业的运作成本。
②业务支持层。这也是一个主要功能,通过它,对企业财务及资金状况、企业管理成本的比率等会有一个比较充分的了解,可以清楚了解员工对企业资产的使用程度,企业的满意度状况。
③企业决策层。它是必不可少的一个主要内容,能使企业能够事先避免出现的危机,立于不败之地。它可以帮助监控和判断企业的现状,及时调整企业的管理战术,它的操作不仅仅停留在帮助企业的决策者模拟和决定企业的管理战略上,对现代企业来说,更为实用。
3 结束语
综上所述,企业要想获得竞争优势,企业家们要充分认识到信息技术对原有企业管理模式所产生的深刻影响,必须认识到信息技术是一种新的生产力,能对内外环境作出快速反应,提高工作效率,降低企业成本,使企业的竞争力得到极大提升,使其企业内部信息传递环节减少,速度加快。
参考文献:
[1]《信号与系统(第二版)》A.V.Oppenheim西安交通大学出版社 2000年.
[2]《数字与模拟通信系统》Leon W.Couch,II电子工业出版社.
[3]邓泽平.一种多用途电度表的红外通讯问题[J].湖南电力,2003,4.
[4]朱磊,郭华北,朱建.单片机89C52在多功能电度表中的应用研究[J].山东科技大学学报(自然科学版),2003,2.
[5]罗兆虹,詹学文,戴学安.红外通讯技术在电能表数据交换中的应用[J].电测与仪表,2002,12.
[6]吴叶兰,廉小亲,石芹侠.电能计量芯片组AT73C500和AT73C501及其应用[J].电测与仪表,2002.
[7]蒋俊峰.基于单片机的红外通讯设计[J].电子设计应用,2003,11.
[8]曾庆立.远距离红外通讯接口的硬件设计与使用[J].吉首大学学报(自然科学版),2001,4.
it新技术论文篇二:《刍议企业IT网络信息安全性的技术》
【摘 要】如今全球已经步入了一个数字化信息时代,计算机网络技术在日常的工作中与平时的生活中占据了重要的地位。正是由于计算机网络技术的大力发展,为人们的工作和生活带来了巨大的便捷。本文针对企业IT网络信息安全性所存在的一些问题进行了阐述,并提出了一些建议性的 措施 。
【关键词】企业IT网络 网络信息 安全性
一、引言
在现代化的企业中,计算机已经成为了不可缺少的部分。在计算机硬件和软件的支持下,多数企业已经逐步形成了自动化一体办公,并且很多企业都构建了自己的专属网络以及专属办公平台,这为企业的工作带来了巨大的便利,并有效地提高了企业的办公效率。在网络的存在下,企业工作人员可以有效地进行资源共享,还可以对所需要的资料进行快捷的查询,实现了高度地信息整合化[1]。伴随着数字信息全球化,无论是在学习中、工作中还是生活中,人们已经不能离开计算机网络。但正是因为这些数字信息化的高效性、便利性也让人们产生了极大的依赖性。在企业使用网络进行办公的过程中,如何加强IT网络信息的安全性是摆在企业面前的重大难题。
二、企业IT管理中所存在的问题
(一)网络安全不能得到保障。
虽然在企业网络建设的过程中,会设置一定的网络安全保护措施,比如企业网络防火墙、企业专用病毒查杀软件等等。即便如此,企业的工作网络依然存在着一定的安全漏洞。企业用户一般都是通过Super Administrator root(超级用户权限)登录计算机并进行计算机系统操作。但是某些用户由于在计算机系统操作过程中使用不当,这会导致所使用的计算机受到外界病毒和木马的攻击。一旦企业中的某台计算机受到不良攻击,如果没有及时制止的话,将会产生一系列的恶性循环,甚至让企业的整个计算机网络处于瘫痪状态。因此,对企业计算机用户的使用权限进行合理地限制将有助于企业IT信息管理工作的实施[2]。
(二)工作人员计算机操作技术需要提高
部分工作人员的计算机操作水平较为低下,缺少专门的计算机知识,但是同时又具有超级用户权限,这会对企业的网络管理带来一定的不便。由于计算机系统是一个比较复杂的 操作系统 ,如果用户在使用的时候不具备一定的操作技能,将很容易产生一些误操作,而这些误操作可能会引发一些问题,导致局部性的故障产生。举例来说:某些工作人员由于缺乏一定的计算机 网络基础知识 ,在设置上网的过程中便会出现一些问题,很容易出现IP冲突的情况;在保存文件的时候,由于误操作导致文件不但没有有效地进行保存反而被删除了,如果该文件是较为重要的文件,所带来的损失是无法估量的;在浏览网站进行工作资料查询时,由于缺乏一定的安全意识,被一些非法网站或链接攻击,导致计算机系统瘫痪,从而对工作带来了一定程度的影响[3]。
(三)缺乏合理的管理
企业在IT网络信息上缺乏合理的管理。由于IT网络信息都是通过分散管理的模式进行管理,这使得这些信息资源可以被随便调用,这便带来了一定的安全隐患。企业也缺少相应的管理制度,即便存在管理制度由于执行力不够而不能保证制度的合理实施。在这种情况下,所谓的“信息管理部门”便显得可有可无,其工作不能得到落实,这给整个企业的网络信息带来了相当大的安全隐患。
(四)信息管理部门工作负担太大
在大多数企业中,都会存在着相应的信息管理部门对企业内部的IT网络信息进行综合性的管理。无疑,信息管理部门的工作人员还是具备一定的计算机 网络知识 和计算机操作能力,但是其他部门的工作人员在这方面却存在着很大的缺陷。这部分工作人员在计算机使用上对于系统的维护从不注意,一旦出现问题总是让信息管理部门的工作人员来进行解决,这无疑加大了信息管理部门的工作量,为信息管理部门带来了极大的负担,这给企业的正常运转带来了一定的阻碍。
三、如何保证企业IT网络的安全性
加强企业IT网络安全性建设可以从网络硬件和软件以及使用人员三个方面进行。
(一)加强计算机网络硬件建设
良好的硬件支持是企业IT网络信息安全性的重要保障。对于企业内部的一些陈旧硬件要进行相应地更换、更新。对于损坏或者出现故障的硬件进行相应地修复,对正常工作的硬件设备要给予定期的检查和维护。另外,也需要对企业内部工作人员进行一定的 硬件知识 培训,向他们传送一些基本的维护、维修技巧,让他们能够具备一定的解决硬件问题的能力,至少要保证他们对日常所用到的网络硬件能够进行正确的识别。总之,企业的计算机网络硬件设备是企业IT网络信息的承载基础,通过加强硬件设备的建设,让企业内部能够拥有一个良好的工作网络环境。
(二)加强计算机网络软件管理
在企业内部IT网络的建设中,计算机网络至始至终扮演着一个重要的角色,企业在日常办公中所使用的系统几乎都是微软公司的Windows系统,因为该系统具体广阔的使用范围和相对良好的兼容性和扩展性,所以受到了企业用户的欢迎。通过对SMS(微软公司系统配置服务)和BDD(客户端桌面组件)进行部署来保证计算机网络管理的实施。通过构建相应的物理网络、目录服务、文件服务、文件共享和储存与备份模块让企业内部IT网络信息的安全性得到应有的保障。
(三)对企业内部工作人员进行专业的技能培养
加强企业内部员工的专业技能培训,提高各部门员工的计算机基础知识和计算机操作能力,这样对于企业的IT网络建设工作具有极大的促进作用,同时也是信息安全的潜在保障。
四、结语
企业IT网络信息的安全性对于企业的发展具有重大的意义。伴随着计算机网络技术的高速发展,企业的工作模式也在发生着潜移默化,这给企业的IT网络建设也带来了一定的要求。通过加强计算机网络硬件建设和加强计算机网络软件管理并提高相关工作人员的计算机操作技能来促进企业的整体网络建设。
参考文献:
[1]徐超,胡洲,朱彤.加强企业IT网络信息安全性的技术方案[J].2102(12):121-123.
[2]邱雪松,陈坚,郭海生,高志鹏.企业IT网络异常流量综合检测模型[J].2010(11):112-113.
[3]葛鸿伟,王俊标.IT网络综合预警系统的设计与实现[J].2011(03):12-13.
it新技术论文篇三:《浅谈计算机技术的发展趋势》
摘要:二十一世纪一个信息化的时代,以计算机技术为代表的信息技术已经逐步渗透到社会的各个领域,而且正在改变着人们的生产与生活甚至是学习。计算机的应用技术不仅是自身在飞速发展,而且已贯穿到许多其他学科,现在的各个科学领域的发展都得益于计算机技术的应用。本文主要从计算机技术涵义入手,探讨一些新型的计算机技术及计算机发展趋势。
关键词:计算机技术 发展趋势
一、前言
当前计算机技术获得了迅猛发展,广泛地应用于人们的生活中,给人们的生活带来了巨大的便利,计算机技术也从单一化领域逐步发展到多元化领域。但随着社会经济的发展,各行各业对计算机技术的要求越来越高,要适应社会需求,就必须深入研究计算机技术,以使计算机技术更好地满足社会需求。
何为计算机技术呢?计算机技术是指运用计算机综合处理和控制文字、图像、动画和活动影像等信息,使多种信息建立起逻辑链接,集成为一个系统并具有交互作用。这与传统的多种媒体简单组合是完全不同的。计算机技术是将视听信息以数字信号的方式集成在一个系统中,计算机就可以很方便地对它们进行存储、加工、控制、编辑、变换,还可以查询、检查。
二、计算机保持关键技术的发展
计算机技术将向超高速、超小型、平行处理、智能化的方向发展。尽管受到物理极限的约束,采用硅芯片的计算机的核心部件CPU的性能还会持续增长。超高速计算机将采用平行处理技术,使计算机系统同时执行多条指令或同时对多个数据进行处理,这是改进计算机结构、提高计算机运行速度的关键技术。同时计算机将具备更多的智能成分,它将具有多种感知能力、一定的思考与判断能力及一定的自然语言能力。除了提供自然的输入手段外,虚拟与现实技术是这一领域发展的集中体现。传统的磁存储、光盘存储容量继续攀升,新的海量存储技术趋于成熟,新型的存储器每立方厘米存储容量可达10TB。信息的永久存储也将成为现实,千年存储器正在研制中,这样的存储器可以抗干扰、抗高温、防震、防水、防腐蚀。
三、新型计算机技术的应用
随着硅芯片技术的快速发展,硅技术也越来越接近物理极限,为了解决物理性对硅芯片的影响,世界各国都在加紧研制新技术,计算机领域将会出现一些新技术,给计算机的发展带来质的飞跃。虽然这些新型计算机技术还在发展中,但不久这些新型的量子计算机、光子计算机、生物计算机、纳米计算机等将会遍布我们生活的各个领域,获得广泛的应用。
1、量子计算机
这种计算机是根据量子效应设计出来的,借助链状分子聚合物的特性来实现开关状态,分子状态变化借助于激光脉冲改变,使相关的信息跟着聚合物转变,然后实现运算。量子计算机是立足于力学规律之上进行运算及存储信息的,量子计算机的存储量是非常大的,不仅能高速地处理数据,还有着安全的保密体系。量子计算机技术的发展是科学界一直追逐的梦想,现在还只是利用了量子点操纵、超导量子干涉等方面,此领域还有待更进一步的研究,量子计算机的应用必会给未来计算机技术发展带来新机遇。
2、光子计算机
光子计算机也就是全光数字计算机,就是用光子代替电子,用光互连代替导线互联,光硬件代替电子硬件,从而实现光运算代替电子运算。光与电子相比,其传播速度非常快,它的能力超过了现有电话电缆的很多倍,同时光子计算机在一般室温下就可以使用,不易出现错误,和人脑具有类似的容错性。这些优势必会提高计算机的效能,使光子计算机获得广泛的发展与应用。
3、生物计算机
生物计算机也即是分子计算机,其运算过程就是蛋白质分子与周围物理化学介质相互作用的过程。生物计算机的转换开关是由酶来担当的,要更好地显现出酶,就需要酶和蛋白质融合在一起。通过这种技术制作的生物计算机体积小,耗电少,存储量大,还能运行在生化环境或者有机体中,比较适合应用于医疗诊治及生物工程等。
4、纳米计算机
纳米属于计量单位,大概是氢原子直径的十倍。纳米技术从开始就受到了科学家们的关注,也是80年代初迅速发展起来的前沿技术,科学家们一直深入研究。现在纳米技术应用领域还局限于微电子机械系统,还没有真正应用于计算机领域。在微电子机械系统中应用纳米技术知识,是在一个芯片上同时放传感器和各种处理器,这样所占的空间较小。纳米技术如果能应用到计算机上,必会大大节省资源,提高计算机性能。
四、未来计算机技术的发展趋势
1、无线化趋势
计算机实现无线化一直是人们梦寐以求的,这与当前 笔记本 实现的无线是不同的,未来计算机无线化是指网络与设备间的无线连接,如果无线化得到了实现,未来在家中使用台式电脑比用笔记本还方便,因为 显示器 与主机不用再连线。也就是说实现无线显示器,这种技术被称为UWB技术,属于无线通信技术,可以为无线局域网和个人局域网提供方便,带来低功耗、高带宽的优势。
2、网络化趋势
目前,信息技术获得了快速发展,计算机也越来越普及,各种家用电器也开始走向智能化,未来有可能实现家电与计算机之间的网络连接,计算机可以通过网络调控家电的运作,也可以通过网络下载新的家电应用程序,从而提高家电的性能。同时利用互联网也可以远程遥控家中的家电,在办公室就能让家中的电器工作,为生活提供便利。
3、人性化趋势
计算机的普及必会要求计算机更好地为人服务,这就需要计算机与人之间的交流要人性化,这样人们才会真正使用计算机。要实现这个目标,计算机的交互方式将会走向多样化,可以通过书写控制,也可以通过语言控制、眼镜控制等。随着智能化的提升,计算机可以自动选择操作流程,使用起来较为简单,有可能达到与家用电器操作一样简单,使用者不需要专门学习就能操作。
五、 总结 语
科学技术是第一生产力,随着信息技术的发展,计算机给人们的生活带来了诸多便利,故大力发展计算机技术是必要的。目前,一些新型的计算机技术已经开始应用到一些领域,未来计算机技术的发展必会超出人们的预想。
参考文献
1、赵玉帅,有关计算机技术的讨论及未来的发展方向[J],信息与电脑,2010年第3期
2、杨晔,未来计算机的发展趋势展望[J],黑龙江科技信息,2007年第7期
3、冯航航,计算机技术的发展[J],今日科苑,2011年第4期
猜你喜欢:
1. 计算机新技术论文
2. 浅谈技术创新管理论文
3. 软件开发技术论文范文
4. 计算机科学技术应用论文3000字
5. 关于科技论文3000字左右
Ⅱ 谁能给我发个面向对象程序设计论文的例文啊
不知道这篇文章能够满足您的要求:
面向对象的软件开发
1 历史回顾
针对日趋复杂的软件需求的挑战,软件业界发展出了面向对象(OO)的软件开发模式。目前作为针对“软件危机”的最佳对策,OO技术已经引起人们的普遍关注。最初被多数人看作只是一种不切实际的方法和满足一时好奇心的研究,现在得到了人们近乎狂热的欢迎。许多编程语言都推出了支持面向对象的新版本。大量的面向对象的开发方法被提出来。关于OO的会议、学术研讨班和课程极受欢迎。无数专业的学术期刊都为这一话题开辟了专门的版面。一些软件开发合同甚至也指明了必须使用OO的技术和语言。面向对象的软件开发对于90年代,就向是结构化的软件开发对于70年代那样让人着迷,而且OO的发展势头还在日益加速。
诸如“对象”和“对象的属性”这样的概念,可以一直追溯到1950年代初。它们首先出现于关于人工智能的早期著作中。然而,OO的实际发展却是始于 1966年 (当年文化大革命在中国爆发) 。 当时Kisten Nygaard和Ole-Johan Dahl开发了具有更高级抽象机制的Simula语言。Simula提供了比子程序更高一级的抽象和封装;为仿真一个实际问题,引入了数据抽象和类的概念。 大约在同一时期,Alan Kay正在尤他大学的一台个人计算机上努力工作,他希望能在其上实现图形化和模拟仿真。尽管由于软硬件的限制,Kay的尝试没有成功,但他的这些想法并没有丢失。70年代初期,他加入了Palo Alto研究中心(PARC),再次将这些想法付诸实施。
在PARC,他所在的研究小组坚信计算机技术是改善人与人、人与机器之间通讯渠道的关键。在这信念的支持下,并吸取了Simula的类的概念,他们开发出Smalltalk语言; 1972年PARC发布了Smalltalk的第一个版本。大约在此时,“面向对象”这一术语正式确定。Smalltalk被认为是第一个真正面向对象的语言。 Smalltalk 的目标是为了使软件设计能够以尽可能自动化的单元来进行。在Smalltalk中一切都是对象-----即某个类的实例。最初的Smalltalk的世界中,对象与名词紧紧相连。Smalltalk还支持一个高度交互式的开发环境和原型方法。这一原创性的工作开始并未发表,只是视为带浓厚试验性质的学术兴趣而已。
Smalltalk-80是PARC的一系列Smalltalk版本的总结,发布于1981年。1981年8月的< <BYTE>>杂志公布了Smalltalk开发组的重要结果。在这期杂志的封面图上,一个热气球正从一个孤岛上冉冉升起来,标志着 PARC的面向对象思想的启航。该是向软件开发界公开发表的时候了。起初,影响只是渐进式的,但很快就跃升到火爆的程度。热气球确实启航了,而且影响深远。早期Smalltalk关于开发环境的研究导致了后来的一系列进展:窗口(window),图标(icon),鼠标(mouse)和下拉式 window环境。Smalltalk语言还影响了80年代早期和中期的面向对象的语言,如:Object-C(1986), C++(1986), Self(1987),Eiffl(1987),Flavors(1986). 面向对象的应用领域也被进一步拓宽。对象不再仅仅与名词相联系,还包括事件和过程。1980 Grady Booch首先提出面向对象设计(OOD)的概念。然后其他人紧随其后,面向对象分析的技术开始公开发表。1985年,第一个商用面向对象数据库问世。 1990年代以来,面向对象的分析、测试、度量和管理等研究都得到长足发展。目前对象技术的前沿课题包括设计模式(design patterns)、分布式对象系统和基于网络的对象应用等。
2 动因
为什么面向对象运动发展到了现在这样火暴的程度?部分是源于人们长久以来的一个希望:人们希望它,象以前其他的软件开发技术一样,能够满足软件开发对于生产效率、可靠性、易维护性、易管理等方面的更高、更快、更强的迫切需求。除此之外,还有许多原因都促使了它的流行。
面向对象的开发强调从问题域的概念到软件程序和界面的直接映射;心理学的研究也表明,把客观世界看成是许多对象更接近人类的自然思维方式。对象比函数更为稳定;软件需求的变动往往是功能相关的变动,而其功能的执行者- ---对象----通常不会有大的变动。另外,面向对象的开发也支持、鼓励软件工程实践中的信息隐藏、数据抽象和封装。在一个对象内部的修改被局部隔离。面向对象开发的软件易于修改、扩充和维护。
面向对象也被扩充应用于软件生命周期的各个阶段---从分析到编码。而且,面向对象的方法自然而然地支持快速原型法和RAD(Rapid Application Development)。面向对象开发的使用鼓励重用,不仅软件的重用,还包括分析、设计的模型的重用。更进一步,OO技术还方便了软件的互换性,即,网络中一个节点上应用能够利用另一个节点上的资源。面向对象的开发还支持并发、层次和复杂等一些在目前的软件系统中常见的现象。今天我们常常会需要建造一些软件系统----不止是一黑盒应用。这些复杂系统通常包含由多个子系统组成的层次结构。面向对象的开发支持开放系统的建设;利用不同的应用来进行软件集成有了更大的柔性。最后,面向对象开发的使用可以减小开发复杂系统所面临的危险,主要是因为系统集成遍布软件生命周期的各个阶段。
3 面向对象的建模
面向对象的建模不仅仅是新的编程语言的汇总。它是一种新的思维方式,一种关于计算和信息结构化的新思维。面向对象的建模,把系统看做是相互协作的对象,这些对象是结构和行为的封装,都属于某个类,那些类具有某种层次化的结构。系统的所有功能通过对象之间相互发送消息来获得。面向对象的建模可以视为是一个包含以下元素的概念框架:抽象、封装、模块化、层次、分类、并行、稳定、可重用和可扩展性。
面向对象的建模的出现并不能算是一场计算革命。更恰当地讲,它是面向过程和严格数据驱动的软件开发方法的渐进演变结果。软件开发的新方法受到来自两个方面的推动:编程语言的发展和日趋复杂的问题域的需求驱动。尽管在实际中分析和设计在编程阶段之前进行,但从发展历史看却是编程语言的革新带来设计和分析技术的改变。同样,语言的演变也是对计算机体系的增强和需求的日益复杂的自然响应。
影响OO产生的诸多因素中,最重要的可能要算是编程方法的进步了。在过去的几十年中,编程语言中对抽象机制的支持已经发展到了一个较高的水平。这种抽象的进化从地址(机器语言)到名字(汇编语言),到表达式(第一代高级语言,如 Fortran),到控制(第二代高级语言,如Cobol),到过程和函数(第二代和早期第三代高级语言,如Pascal),到模块和数据(晚期第三代高级语言,如mola),最后到对象(基于对象和面向对象的语言)。Smalltalk和其他面向对象语言的发展使得新的分析和设计的技术的实现成为可能。
这些新的OO的技术实际上是结构化和数据库方法的融合。OO的方法中,小范围内对面向数据流的关注,如偶合和聚合,也是很重要的。同样,对象内部的行为最终也需要面向过程的设计方法。数据库技术中的实体-关系(ER图)的数据建模思想也在 OO的方法中得以体现。
计算机硬件体系结构的进步,性能价格比的提高和硬件设计中对象概念的引入都对OO的发展产生了一定的影响。OO的程序通常要更加频繁地访问内存,需要更高的处理速度。他们需要并且也正在利用强大的计算机硬件功能。哲学和认知科学的层次和分类理论也促进了OO的产生和发展。最后,计算机系统不断增长的规模、复杂度和分布性都对OO技术起了或多或少的推动作用。
因为影响OO发展的因素很多,OO技术本身还未成熟,所以在思想和术语上有很多不同的提法。所有的OO语言并非生而平等,他们在术语、概念的运用上也各不相同。尽管也存在统一的趋势,但就如何进行面向对象的分析、设计而言还没有完全达成共识,更没有统一的符号来描述这些活动。(说明:UML正在朝这方向努力)但是,OO的开发已经在以下领域被证明是成功的:空中交通管理、动画设计、银行、商业数据处理、命令和控制系统、CAD、CIM、数据库、专家系统、图象识别、数学分析、音乐合成、操作系统、过程控制、空间站软件、机器人、远程通讯、界面设计和VLSI设计。毫无疑问,OO技术的应用已经成为软件工业发展的主流。
4 面向对象编程
<1> 概念
在面向对象编程中,程序被看作是相互协作的对象集合,每个对象都是某个类的实例,所有的类构成一个通过继承关系相联系的层次结构。面向对象的语言常常具有以下特征:对象生成功能、消息传递机制、类和遗传机制。这些概念当然可以并且也已经在其他编程语言中单独出现,但只有在面向对象语言中,他们才共同出现,以一种独特的合作方式互相协作、互相补充。
过程化编程模式: 参数输入----- | 代 码 | ------结果输出
为实现某个功能,参数被传入某个处理过程,最后传回计算结果。
| 对象------ 数据结构 面向对象编程模式:
界面 | 对象------ 和
| 对象------ 操作
OOP中,功能是通过与对象的通讯获得的。对象可以被定义为一个封装了状态和行为的实体;或者说是数据结构(或属性)和操作。状态实际上是为执行行为而必须存于对象之中的数据、信息。对象的界面,也可称之为协议,是一组对象能够响应的消息的集合。消息是对象通讯的方式,因而也是获得功能的方式。对象受到发给他的消息后,或者执行一个内部操作(有时成为方法或过程),或者再去调用其他对象的操作。所有对象都是类的实例。类是具有相同特点的对象的集合,或者也可以说,类是可用于产生对象的一个模版。对象响应一个消息而调用的方法,由接受该消息的对象自己决定。类可以以一种层次结构来安排。在这个层次结构中,子类可以从比他高的超类中继承得到状态和方法。当对象接收到一个消息后,寻找相应的方法的过程将在从该对象的类开始,并在该类所处的层次结构中展开,最后,直到找着该方法,或者什么也没找到(将会报错)。在某些语言中,一个给定的类可以从不止一个超类中继承,称之为多继承。如果采用动态联编,继承就导致了多态性。多态性描述的是如下现象:如果几个子类都重新定义了超类的某个函数(都用相同的函数名),当消息被发送到一个子类对象时,在执行时该消息会由于子类确定的不同而被解释为不同的操作。方法也可以被包括在超类的界面中被子类继承,而实际上并不去真正定义他。这样的超类也叫抽象类。抽象类不能被实例化,因此也就只能被用于产生子类。
<2> 语言
面向对象的语言包含4个基本的分支:
1 基于Smalltalk的; 包括smalltalk的5个版本,以Smalltalk-80为代表。
2 基于C的; 包括 objective-C, C++, Java
3 基于LISP的; 包括 Flavors, XLISP, LOOPS, CLOS
4 基于PASCAL的。包括 Object Pascal, Turbo Pascal, Eiffel, Ada 95
Simula实际上是所有这些语言的老祖宗。在这些OO语言中,术语的命名和支持OO的能力都有不同程度的差别。 尽管Smalltalk-80不支持多继承,它仍被认为是最面向对象的语言(the truest OO language)。
在基于C的OO语言中,Object-C 是Brad Cox开发的,它带有一个丰富的类库,已经被成功用于大型系统的开发。C++是由贝尔实验室的Bjarne Stroustrup写的。它将C语言中的STRUCT 扩展为 具有数据隐藏功能的CLASS。多态性通过虚函数(virtual functions)来实现。C++ 2.0 支持多继承。在多数软件领域,尤其是Unix平台上,C++都是首选的面向对象编程语言。同C和C++相类似的新一代基于Internet的面向对象语言Java是由Sun microsystems研制的。它于1995年伴随着Internet的崛起而风靡一时。用Java写的applets可以嵌入HTML中被解释执行,这使它具备了跨平台特性。Java和Ada一样支持多线程和并发机制,又象C一样简单、便携。
基于LISP的语言,多被用于知识表达和推理的应用中。其中CLOS(Common LISP Object System)是面向对象LISP的标准版。
在基于Pascal的语言中,Object Pascal是由Apple和Niklaus Wirth为Macintosh开发的,它的类库是MacApp。Turbo Pascal 是Borland公司以Object Pascal为范本开发的。
Eiffel由交互软件工程公司的Bertrand Meyer于1987年发布的。它的语法类似Ada,运行于Unix环境。Ada在1983年刚出来时并不支持继承和多态性,因而不是面向对象的。到了 1995年,一个面向对象的Ada终于问世,这就是Ada 95。
除了上述的面向对象的语言之外,还有一些语言被认为是基于对象(Object-based)的。它们是:Alphard, CLU, Euclid, Gypsy, Mesa, Mola。
5 面向对象的软件工程
生命周期
尽管面向对象的语言正在取得令人激动的进展,但我们都知道,编码并非是软件开发中的问题的主要来源。相比之下,需求和分析的问题更加普遍,而且它们的纠错代价更加昂贵。因此,对OO开发技术的关注就不能仅仅集中在编码上面,更应集中关心软件工程的其他方面。OO方法在处理复杂系统的分析和设计、分析和设计的重用方面的应用前景也是非常可观。如果我们承认OO的软件开发不仅仅局限于编码活动,那么就必须采用一种全新的开发模式,包括新的软件生命周期。目前最常见的生命周期是“瀑布”模型(结构化)。它是在60年代末“软件危机”后出现的第一个生命周期模型。如下所示。
分析 ----- 设计 ----- 编码 ----- 测试 ------ 维护
如图所示,瀑布式生命周期的开发过程是顺序行进的;活动流向基本是单向的。它假设开发者在开发初期对系统的了解足够清楚。不幸的是,任何软件开发活动都不可避免地要涉及大量迭代过程,无论你事先是否安排。好的设计人员指的是那些能同时在抽象的层面和具体的细节上进行工作的实践家。总的来说,瀑布式生命周期的缺点表现在三个方面:<1> 后期的变化、迭代、改动困难 <2> 不支持重用 <3> 没有一个联系各个阶段的统一模型。
面向对象的方法从问题模型开始,然后就是识别对象、不断细化的过程。它从本质上就是迭代的和渐增的。在这里,快速原型和反馈环路是必需的标准结构。开发过程就是一次次的迭代反复过程。随着迭代的进行,系统的功能不断完善。这里,传统的开发模式中在分析、设计和编码等各个阶段之间的明显界限变得模糊起来。其原因是因为对象的概念弥漫了整个开发过程。对象和它们之间的关系成为分析、设计和编码等各个阶段的共同表达媒介。开发的重心从编码向分析偏移,从功能为中心向数据为中心偏移。而且,面向对象开发的迭代和无缝性使得重用变得更加自然。
近来,为改善面向对象开发的可管理性,玻姆(Boehm,1988)提出了一个结合了宏观和微观视角(macro & microview)的螺旋开发模型。宏观包括3个阶段:1分析---发现和识别对象;2 设计---发明和设计对象;3 实施---创建和实现对象。每个宏观阶段都包含一些微观迭代活动。
6 OOA和OOD
由于面向对象的技术还比较新,目前存在许多种面向对象的分析和设计方法。面向对象的分析(OOA)建立于以前的信息建模技术的基础之上,可以定义为是一种以从问题域词汇中发现的类和对象的概念来考察需求的分析方法。OOA的结果是一系列从问题域导出的“黑箱”对象。OOA通常使用“剧情(scenarios)”来帮助确定基本的对象行为。一个剧情是发生在问题域的一个连续的活动序列。在对一个给定的问题域进行 OOA时,“框架”(Frameworks)的概念非常有用。框架是应用或应用子系统的骨架,包含一些具体或者抽象的类。或者说,框架是一个特定的层次结构,包含描述某一问题域的抽象父类。当下流行的所有的OOA方法的一个缺点就是他们都缺乏一种固定的模式(formality)。
在面向对象的设计(OOD)阶段,注意的焦点从问题空间转移到了解空间。OOD是一种包含对所设计系统的逻辑的和物理的过程描述,以及系统的静态和动态模型的设计方法(Booch,1994)。
在OOA和OOD中,都存在着对重用性的关注。目前,OO技术的研究人员们正在尝试定义“设计模式(design patterns)”这一概念。它是一种可重用的“财富”,可以应用于不同的问题域。通常,设计模式指的是一种多次出现的设计结构或解决方案。如果对他们进行系统的归类,即可被重用,可以构成不同设计之间通信的基础。
OOD技术实际上早于OOA技术而出现。目前在OOA和OOD已经很难画出一条清晰的界限。因此,下面的描述给出一些常用的OOA/OOD技术的(联合)概貌。
Meyer 用语言作为表达设计的工具。(1988)
Booch的OOD技术扩展了他以前在Ada方面的工作。他采用一种“反复综合(round-trip gestalt)”的方法,包括以下过程:识别对象,识别对象的语义,识别对象之间的关系,进行实施,同时包含一系列迭代。Booch是最先使用类图,类分类图,类模板和对象图来描述OOD的人(1991)。
Wrifs-Brock's的OOD技术是由职责代理来驱动的。类职责卡(Class Responsibilities Cards)被用来记录负责特定功能的类。在确定了类及其职责之后,再进行更详细的关系分析和子系统的实施。(1990)
Rumbaugh使用3种模型来描述一个系统:1 对象模型,描述系统中对象的静态结构;2 动态模型,描述系统状态随时间变化的情况;3 功能模型,描述系统中各个数据值的转变。对象图,状态转换图和数据流图分别被用于描述这3个模型。(1991)
Coad和Yourdon采用以下的OOA步骤来确定一个多层OO模型(5个层次):找出类和对象,识别结构和关系,确定主题,定义属性,定义服务。5 个步骤分别对应模型的5个层次,即类和对象层,主题层,结构层,属性层和服务层。他们的OOD方法既是多层次的又是多方面的 (multicomponent)。层次机构和OOA一样。多方面包括:问题域,人与人的交互,任务管理和数据管理。
Ivar Jacobson 提出了Objectory方法(或Jacbson法),一种他在瑞典Objective系统中开发的面向对象软件工程方法。Jacbson的方法特别强调了“Use Case”的使用。 Use Case成为分析模型的基础,用交互图(Interaction Diagram)进一步描述后就形成设计的模型。Use cases同时也驱动测试阶段的测试工作。到目前为止,Jacbson法是最为完整的工业方法。 (1992)
以上所述的方法还有许多的变种,无法一一列出。近年来,随着各种方法的演变,它们之间也互相融合。1995年,Booch,Rumbaugh和Jacbson联手合作,提出了第一版的UML(Unified Modelling Language),一体化建模语言。(目前已经成为OO建模语言的事实标准)
7 管理问题
当组织向面向对象的开发技术转向时,支持软件开发的管理活动也必然要有所改变。承诺使用OO技术即意味要改变开发过程,资源和组织结构。 (Goldberg 1995) OO开发的迭代、原型以及无缝性消除了传统开发模式不同阶段之间的界限。新的界限必须被重新确定。同时,一些软件测度的方法也不在适用了。“代码行数” LOC(Lines of Code)绝对过时了。重用类的数目,继承层次的深度,类与类之间关系的数目,对象之间的耦合度,类的个数以及大小显得更有意义。在OO的软件测度方面的工作还是相当新的,但也已经有了一些参考文献。(Lorenz 1993)
资源分配和人员配置都需要重新考虑。开发小组的规模逐步变小,擅长重用的专家开始吃香。重点应该放在重用而非LOC上。重用的真正实现需要一套全新的准则。在执行软件合同的同时,库和应用框架也必须建立起来。长期的投资策略,以及对维护这些可重用财富的承诺和过程,变的更加重要。
至于软件质量保证,传统的测试活动仍是必须的,但它们的计时和定义必须有所改变。例如,将某个功能“走一遍”将牵涉到激活一个剧情(scenario),一系列对象互相作用,发送消息,实现某个特定功能。测试一个 OO系统是另一个需要进一步研究的课题。发布一个稳定的原型需要不同与以往控制结构化开发的产品的配置管理。
另一个管理方面要注意的问题是合适的工具支持。一个面向对象的开发环境是必须的。同时需要的还包括:一个类库浏览器,一个渐增型编译器,支持类和对象语义的调试器,对设计和分析活动的图形化支持和引用检查,配置管理和版本控制工具,以及一个象类库一样的数据库应用。
除非面向对象开发的历史足以提供有关资源和消耗的数据,否则成本估算也是一个问题。计算公式中应该加入目前和未来的重用成本。最后,管理也必须明白在向面向对象方法转变的过程中要遇到的风险。如消息传递、消息传递的爆炸增长、动态内存分配和释放的代价。还有一些起步风险,如对合适的工具,开发战略的熟悉,以及适当的培训,类库的开发等。
8 向面向对象转变
这个转变的时期可能相当长。培训是必须的。一个实验性质的向导项目也是有必要的。建议不要使用结构化和面向对象像结合的办法。越来越多的证据表明,成功需要完全的 OO解决方案.
9 未来
总的来说,面向对象的技术是以前的软件开发技术自然演进的成果,对许多应用领域的软件开发都极具前途。借用Maurice Wilkes在他图灵奖颁奖仪式上的演讲的话:“对象是软件界从70年代以来最激动人心的革新之一。” (1996) 然而,面向对象的开发并非是包医百病的灵丹妙药,其发展还远未成熟。可是尽管OO技术的未来还未确定,但在90年代初期的一些预言都已实现。 (Winblad 1990) 类库和应用程序框架在市场上已经可用。应用和环境之间的透明信息存取业已实现。支持用户在应用之间通信的的环境以及面向对象的继承多媒体工具包正在涌现。随着经验的积累,OO的发展将日渐流行,OO技术也将日趋成熟。当然,OO技术也有可能为某种处理更高一级抽象的开发技术取代或融合。这些都只是猜想。虽然在不远的将来,谈论对象无疑会显得过时,但现在,还有许多的问题等着我们去付出真正的热情。
Ⅲ 计算机专业C与C++程序设计研究论文
计算机专业C与C++程序设计研究论文
摘要 :首先介绍了目前高校计算机学院C族语言相关程序设计课程的建设状况。然后从C族语言的相互衍生关系出发,提出了在高校计算机课程体系中去除C语言的基础课程,将其综合成一门C++程序设计课程来供学生学习,并对课程内容、参考教材和课时安排上给出了自己的建议。
关键词 :C语言;C++语言;程序设计
高校的C族语言教学总是按照先学C语言,再学C++的顺序进行,这种学习顺序随着C++标准的不断升级改革后变得越来越不适用。早期的C++属于多面性语言,即可以像C一样进行模块化的面向过程的编程设计,也可以像Java一样进行抽象的面向对象程序设计。那时的教学者考虑的是学生应当从较为便于理解的面向过程的编程思路入门学习C语言编程,然后在熟练了面向过程的编程方式后再从C语言延伸到C++,转而学习面向对象的程序设计。可是随着面向对象的程序设计在应用市场上占领了绝对的主导地位后,再让学生从面向过程着手就等于是浪费学习时间。加上C++和C两门语言的初级语法思想是完全一致的,开设两门课程浪费了学时,也耽误后续更重要的核心课程的学习。
1程序设计语言C与C++的比较
1.1C与C++的共性。一般简要的介绍是把C++当作C的加强版,这种认知当然是错误的,C++语言的设计者在设计之初为了保障自家语言会受到开发者的关注,所以兼容了的C的语法,这就自然使得C++可以使用C的编程方式进行程序设计,所以也导致了很多人对这两种语言的关系产生了错误的认知。同时由于C语言本身设定上的优越性,所以C++在进行自我定义的时候也沿用了C语言很多优良的性质。基础数据结构一致,C与C++的基础数据类型都是以变量和常量作为基本属性划分,类型上有字符型、整型、长整型、单精度浮点型和双精度浮点型,不过C++额外增设了布尔型。复合型数据结构上也都同时具有数组、多维数组、结构体、枚举类型和共同体,但是C++增设了字符串类型以替代C语言中的字符数组,功能上更加强大,也更加便捷。在语法方面,声明、赋值、循环、选择的结构和实现都是一致的,并且C++虽然提倡使用类和对象的概念去设计程序结构,可也同样支持函数体结构的程序设计结构。并且C语言中函数的赋值都是间接调用,在使用C语言函数时总是会在指针上出现各种纰漏,但是C++的函数体可以使用引用参数,这就使得C++的函数体比之C的更加好用。总的说来就是,C++标准下用户可以完全使用C语法进行编程而不会出现任何BUG,同时C++自身的优越设定和标准使得其设计能力比C要强大数倍,是目前市场上大型程序开发的首选语言。
1.2C与C++的不同。上一节介绍了C++和C的.基础语法上的区别,这些区别都是C++的作者在C的基础之上修订而来的结果,是为了让C++标准下得面向过程的程序设计比之单纯的C更加便捷方便。但是C++的诞生伊始,就是一门向上使用面对对象的程序设计思想的高级编程语言。它的封装性、继承性、多态性和对象唯一性才是C++成为强大高级语言的重要原因,这些特性都是C语言不可能拥有的。所以C能够实现的程序,C++能够实现并且实现的更为方便,C不能实现的程序,C++同样可以实现。
1.3C++的特色。承接上一节,C++和C之间最大的不同,也是C++自身最值得夸耀的特性,就是面向对象程序设计思想。这种思想使得C++语言设计出来的程序,变成了类和对象的有机结合,这种结合的代码比之面向过程的函数体架构的代码更加易读,共同开发起来容易上手,后续的维护者也不用费更多的脑筋去理解前人的代码含义。而类和对象的设计思路,使得开发者合作时相互之间的工作变的更为独立,双方之间只需要知道对方所写的类实现的功能和包含的数据就行。这种特性我们称之为良好的封装性,开发者之间不需要去知道对方的代码是如何实现,甚至在此之上还可以保证良好的代码健壮性。因为类的引入,更先进的作用域机制也被引入进来,类的书写者往往会将自己类中的数据进行严格的作用域限定,防止其他合作者擅自去修改和使用自己类中的数据。合作者想要知道类中的数据或者使用类中的数据,只能通过类的书写者定义的带有检查机制的方法才行。这样会使得很多人合作开发的大型项目的稳定性和安全性比之用C语言开发时再上一个台阶。同时类的概念中还有一个先进的设定就是继承性,并且由这个继承性还延伸出了接口的概念。有了可以继承的接口和类,那么开发者在对程序进行迭代的瀑布开发流程时,就可以很好的使用自己曾经开发的源代码,或者借用其他项目的源代码,因为只要学会科学的使用继承机制,就不仅仅是节约程序员的代码时间,也减少了程序员在回顾曾经代码时发生的错误和歧义。而与继承机制配合使用的是多态性,曾经C语言中定义的函数,其灵活度非常差,特定的函数只能满足特定程序定义的需求,想要重用曾经的源代码是几乎不可能的事情。我们刚才提到的继承机制使得C++开发者复用源代码成为了一种习惯,但是复用时不可避免的修改问题又摆到了台面上,多态机制顺应而生了。多态机制使得类不仅可以继承其他类,将父类的数据和方法都在本类体中自如的使用,同时还可以用本类中新的定义和代码去覆盖父类中的数据定义和方法。这就让程序员变的更加自由,想用父类的数据和方法时就去继承,但是不想全部使用时就加上多态机制去覆盖。这样代码之间的重复利用率变得十分客观,节约了大量的开发时间和开发成本。
2程序设计语言C与C++开设建议
C++课程的内容应当如下安排:第一部分,教授C++的基础语法,让学生可以编写出在DOS命令行下输入输出的程序,了解编程的基本概念和思想。并且这时应当同时进行C和C++的双向语法教学,为日后学生进入高年级后的方向选择打下基础。此部分使用半个学期最为适宜,并且此时并不灌输学生何为面向对象何为面向过程,而主在让学生使用基础语法进行最基本的编程探索。第二部分,在学生有了基础编程知识后,将数据结构的内容放入课程中去,用半学期的时间教授学生用C++实现的各类常见数据结构。并且结合实际开发项目中的代码作为阅读补充,让学生明白数据结构的知识对程序开发的意义,然后将简化后的小项目作为课堂的主要内容,用实际的代码让学生去理解那些枯燥的数学定理和概念。而且在实现数据结构的过程中,必然会面对一些更为高级的C++语法和概念。总的来说,用大一上的一个学期让学生对于基础编程有了良好的认知和深入,是十分值得和有效的。第三部分,在学生有了数据结构的基础和C++的基本语法掌握后,应当面对一些实际的开发项目和问题。当然实际的问题还是需要老师进行简化,其主要目的是让学生掌握C++的高级特性和实际软件开发的过程与思路,并且想学生传授基础的算法。这一部分较为困难,应当使用一个学期让学生慢慢的掌握和熟悉。第四部分,在学生算是对C++语言和数据结构与算法都有了基础的入门后,再进行课堂教学意义就不大了,应当再大二上学期开设一门课程设计实验课,让学生完成几个难度从小到大的项目,循序渐进的掌握基本的实际开发技巧和思维。
参考文献
[1]罗莉.计算机程序设计的多应用型开发与实现[J].产业与科技论坛,2015(14):54-55.
[2]邓薇,何锫,钱俊彦,等.深度优先的多基因表达式程序设计[J].模式识别与人工智能,2013(9):819-828.
[3]宛西原,汪霞.非计算机本科专业计算机程序设计课程的改革思考[J].计算机工程与科学,2014(z1):56-59.
;