发布时间:2023-11-22 11:00:50
序言:作为思想的载体和知识的探索者,写作是一种独特的艺术,我们为您准备了不同风格的5篇计算机软件开发入门,期待它们能激发您的灵感。
现代计算机技术的不断发展,为我们的生活带来了极大的便利,网络的普及化也带动了计算机软件开发技术的发展。软件开发是程序员通过代码实现一定的功能甚至系统,为国家、企业、教学部门等提供相应的便利。本文将从计算机软件开发技术的发展现状、及其在现代科技中的重要性、计算机软件开发技术的应用和计算机软件开发技术的发展趋势四个方面探讨。
一、计算机软件开发技术的现状
1、何为计算机软件。计算机软件是通过软件开发技术得到的应用软件和系统软件,它们是计算机技术不断发展的产物。应用软件是为用户解决具体问题、提供方便的工具。例如,学习软件等,特别是近几年来安卓技术的不断发展,安卓应用软件急剧增加,大到淘宝、银行的客户端,小到单机小游戏都属于应用软件。系统软件是计算机本身具有的软件,比如计算机的管理监控软件,操作系统软件等。应用软件和系统软件都是计算机必不可少的部分,是用户正常使用计算机的软件保障。
2、发展现状。计算机技术的主要特点是发展迅速、更新换代极快。自计算机的出现通过短短的几年发展到现在计算机的普及,计算机的普及推动了计算机软件开发技术的发展。我国的软件产业发展迅速,软件开发人才也是急剧增加。软件应用领域的广泛,对软件开发人才的需求量也随之增多,因此计算机软件开发技术人才的数量日渐增多。
二、计算机软件开发技术的重要性
作为计算机发展和软件工程核心的计算机软件,是推动信息技术发展和网络普及的主要力量。软件应用领域的广泛性推动了计算机网络的不断发展,同时也促进了远程控制等网络技术的出现和发展。软件的不断发展增加了用户对网络的需求,网络的普及促进了软件的发展,网络与软件相辅相成,共同推荐了计算机的发展。在科技不断发展的当代,计算机软件开发技术应紧跟时代潮流,不断创新进步,抓住机遇面对挑战,为用户带来更大的方便。
三、计算机软件开发技术的应用
1、常用的软件开发技术。软件开发技术很多,分为很多类,主要有Java Web、PhP、.net。Java Web是现在比较流行的软件开发技术,适合做大型项目,有许多的开源框架,使得JavaWeb的程序员能够高效快速地开发出高质量产品。PHP入门简单,要求低于Java Web,是一种简单方便的开发技术,适合于小项目软件的开发。PHP开发成本低,开发速度快,是它流行的主要原因。.net用的语言是C#,它的标准集成是XML、SOAP及其他,这个标准实现了与其他软件平台的互操作。 2、面向对象的软件技术。随着计算机技术的不断发展,软件开发需要的环境也越来越复杂,应用软件必须具备跨平台的特性,才能满足用户的需求。软件开发技术具有开放性,传统的开发技术的不透明性导致系统复杂,后期维护繁琐,维护的花费过高,拓展应用领域和功能困难,阻碍软件的更新。然而,面向对象的软件技术具有可拓展性、结构开放性等特点,能够弥补传统开发技术的相应缺陷,为计算机软件开发带来了新的活力。 3、网络通信的新时代。计算机软件的不断发展,促进了网络的普及,为网络通信带来了新时代。无线网、局域网的出现,使得互联网技术呈现出数字化和信息化的特点,通过网络将全球联系到了一起,推动了全球化。
四、计算机软件开发技术的发展趋势
1、网络化。网络化是计算机软件发展的必然趋势,计算机软件依赖于网络,同时也促进网络的发展,因此,网络化是软件和网络的双赢模式。网络为计算机软件的发展平台,为软件提供了各种便利,所以,软件开发趋于网络化。 2、服务化。软件的开发是为了更好的服务用户,为用户提供便利。未来的计算机软件发展以更好的服务用户为目标,运用最先进的技术,最人性的开发理念,尽最大努力满足用户的需求,因此,服务化是计算机软件开发技术的一个发展趋势。3、智能化。随着技术的不断进步,机器智能化已成为一种必然趋势。开发人员通过一些算法,能够使软件更加智能化,有着像人类一样的思维和运行方式。智能化的实现是计算机软件的重要进步,是新技术的一次革新。
五、结束语
综上所述,计算机软件开发技术是当代新技术的重要组成部分,它的发展能够带动整个社会的科技进步,计算机软件的不断发展促进了计算机的发展,推动了网络的不断普及。重视计算机软件开发技术,推动开发技术的不断创新,从而为人类社会的进步提供技术支持。
参 考 文 献
[1]张茵.计算机软件开发技术的应用探析[J].信息通信,2013,(7):128-128.
【关键字】软件开发;新技术;应用研究
1软件开发的方式
1.1生命周期法
根据软件开发的过程,从时间角度进行阶段划分,将软件开发分解成研发前期、研发中期、研发后期和反馈阶段等诸多阶段,并对每一阶段的进程和结果严格控制,确保软件开发的质量和精确度。
1.2原型化法
相比于生命周期法的严谨理论,原型化法不需要重复繁杂的定义和说明,在软件开发初期也不必明确相关资料和信息,原型化法适合初期概念不明确的软件开发。通过原型化系统的深入研究,不断优化从而达到软件要求的条件。原型系统的纸上原型能根据软件的一部分特征进行工作原型还原,将部分制作好的软件功能试放达到初步测试的效果,让用户及时的了解现有的原型以便后期调试和修改。
1.3自动化法
自动化法相对其他两种方法来说,非常简便快捷,只需要说出具体的方法和内容,第四代软件工具就能进行自动分析和结果处理,设计和编写代码。自动化法主要依靠第四代技术的诸多软件开发工具得以实现自动化的功能。
2计算机软件开发的技术分类
2.1C语言技术
C语言是计算机软件开发中使用最广泛的基础性技术,作为最早被应用的编程开发语言,C语言最早可追溯至1970年,经过数十年的不断进步和完善,C语言技术已经逐步趋于成熟。C语言在诸多操作系统和版本中都可完美使用,比如Windows、Linux、DOS等。C语言在编程过程中,仅包含关键字32个,控制语句9种,编译过程十分简洁,即使新手入门也能在很快的时间内初步掌握编写方法。其次,C语言包含了比较大的运算范围,能够处理包括括号在内的很多类型运算,具有丰富的运算类型和良好的表达式类型。
2.2JAVA技术
JAVA技术相较于C语言来说,具备良好的安全性能和较强的通用性。JAVA技术普遍应用在跨平台的软件开发中,最早可追溯至1995年,JAVA技术最开始被命名为OaK,不断发展过程中更名为JAVA。JAVA技术推广后,主要被应用在Web软件开发中,JAVA技术的出现将Web的发展进程大大缩短。JAVA的界面风格类似于C语言,在继承C语言核心思想的基础上,改进了C语言的缺陷,通过垃圾回收站功能直接回收不需要引用对象所占据的内存空间,让程序员不必再担心内存不够或内存丢失的问题。其次,编译JAVA的源代码可以直接通过纯文本编辑器进行,不需要任何格式转换或改变,在Windows操作系统能直接使用记事本就能实现JAVA代码的编辑,在Linux操作系统内可以使用vi工具进行编译。利用JAVA技术编写的软件具有结构规范的特性,这是因为JAVA技术在语言使用上非常严谨,结构混乱的程序无法通过JAVA正常编写。目前,JAVA技术是计算机软件开发行业中主流的开发技术。
2.3VisualBasic技术
VisualBasic技术又称VB技术,是Microsoft公司推出的非常受欢迎的软件编程语言之一,也是目前使用最多的开发语言。VB技术没有使用传统的编程界面,源于BASIC编程语言的VB语言实现了操作界面的图形可视化,让编程变得简单明了和修改方便。VB的组件功能让程序员十分轻松的进行应用程式的建立和修改,不论是新手还是专业人士,都能够开发复杂的程序。优化大师、MIS、MRP等企业软件通过VB技术实现了快速发展,但是VB技术的缺陷也很明显,不支持继承、在处理异常错误时缺乏完善手段、不支持多线程等缺点让VB技术的推广应用只停留在小范围,没有得到大范围的普及。
3软件开发技术存在的问题及对策
3.1软件发展缺乏核心支撑技术
客观的分析我国软件发展历程,我国软件行业依旧处于初级发展阶段,开发水平和研发能力都比较落后,和其他国家相比,我国在自主创新能力方面比较欠缺,这是我国软件产业世界产业链中下游的主要原因,其次,我国开发的软件层次和质量都不高。核心技术的缺乏是导致这些问题出现的主要原因,部分前端和关键性的开发领域我国依旧处于空白期。软件人才的结构矛盾是限制我国软件行业向更深更广方向发展的原因,国内从事软件行业的人员多是基础性的技术人才,专门从事基础程序和技术支持等研究,没有研究高层次科研的专业人才。针对此,我国应该加大人才队伍建设,培育具备自主创新和高精尖科研水平的专业人才队伍,不断优化人才配置,让我国软件开发力量逐步加强,提高软件开发的技术研究和产品质量,加快软件开发产业链的发展,让我国软件产业的发展水平争取早日到达世界领先水平,软件产业发展进程不断加快。
3.2软件产业发展环境存在诟病
国内软件产业发展结构不尽合理。缺少强大的领头军企业,在国际上也没有比较有说服力的产品和品牌,缺乏国际影响力。其次,国内对硬件的关注和重视程度远远大于对软件的开发和研究,在政策力度和科研经费等硬性条件上也远远不能满足软件开发的需求,人才建设和人力资源等方面,也经常出现人才流失现象。在国内软件行业发展进程中,最大的问题之一就是盗版,盗版现象直接导致软件企业的知识产权和智慧成果受到剽窃,致使软件企业经济实力受损、开发积极性降低。其次,不公平竞争、科研投入不足等现实,无法保障工作人员良好的开发环境和工作积极性,造成软件产品质量下滑,难以提升发展空间。针对此,国家要加强政策引导和市场环境监督,为软件开发和软件企业营造一个积极向上、公平健康的市场氛围,实施相应的法律法规对盗版现象进行严厉打击,切实保障企业的知识产权,对不公平竞争和扰乱市场秩序的违法行为严厉惩处,加强市场秩序建设,让国内的软件开发行业能够健康稳定的推进。其次,加大人力资源和基础建设的投入,为软件开发提供优良的办公环境和高素质的人才队伍,只有这样,才能加快我国软件开发的进程,实现软件技术的突破与创新。
参考文献:
[1]张伟.计算机软件开发技术的应用与发展趋势研究[J].软件,2013(03):151~153.
关键词:高职;项目课程;项目教学;数据库应用系统;Visual Basic;SQL Server
中图分类号:TP312文献标识码:A文章编号:1009-3044(2010)02-372-02
Development of "Database Application System Development" Project Course in Higher Vocational Education
WU Bin
(Changzhou College of Information Technology, Changzhou 213164, China)
Abstract: This article introduces completely the way of thinking of "database application system development" project course of our computer software development's related specialities, the strategy and methods of project chooses and technique introduce, the implement and effect of the project course.
Key words: higher vocational education; project course; project teaching; database application system; Visual Basic;SQL Server
高职高专计算机软件开发专业的课程体系大多以分立的前导专业基础课程、短期阶段性的综合课程设计或项目实训构成。由于计算机技术迅速发展,软件开发工具不断产生,课程体系中课程的数量不断膨胀,课程课时受学制等条件的限制不断压缩,无论是专业基础课程还是综合课程设计或项目实训的教学均难以深入,课程犹如蜻蜓点水,难以给学生形成一个软件系统开发过程的完整思路,学生的软件开发能力,特别是编程能力培养效果不明显,影响高职高专软件开发人才的培养效果。
构建合理课程体系、开发软件开发专业课程,在较短时间内有效提高学生编程能力,培养学生软件开发核心能力,是高职高专计算机软件开发相关专业教学研究的一个重要问题。
1 《数据库应用系统开发》项目课程开发思路
按照国家对于高职高专人才培养的思路和要求,我们对软件开发专业人才发展的规律进行研究。大量软件开发专业人才发展经历的研究表明,精通一个系列软件系统开发,很容易迁移到其它平台。为此,我们确立了软件专业课程体系的指导思想-“一套工具、一项技术、一条主线、一个完整实际系统”,课程设置坚持少而精,用3~4门核心课程为主线贯穿整个教学,在有限课时内,采用有限开发工具,使学生在毕业前精通一套软件开发工具的使用,开发出一个完整的系统。
软件开发涉及面广,数据库应用系统的开发是软件开发的重要方面。VB+SQL Server,ASP+SQL Server是C/S、B/S数据库应用开发的典型工具,具有代表性。可以通过3~4门课程培养学生软件开发核心能力。可以构建以VB、ASP、SQL Server为前导专业基础课,数据库应用开发(VB+SQL Server或ASP+SQL Server)为综合性开发实践类专业课程为主线的课程体系,培养学生软件开发核心能力。其中,VB、ASP、SQL Server前导专业基础课采用案例以一体化教学形式教学,数据库应用开发采用项目以一体化教学形式开展教学。
《数据库应用系统开发》(VB+SQL Server)项目课程开发思路:以实际开发所使用的最简单,最有效的数据库操作技术贯穿整个课程,选择学生熟悉的项目,以一个专业数据库应用系统开发的完整过程,使学生能够使用Visual Basic、SQL Server开发出一个完整的数据库应用系统。
2 《数据库应用系统开发》项目课程开发实践
2.1 课程开发团队的组建
我院软件专业课程体系以及《数据库应用系统开发》项目课程的开发始终在校企紧密合作的基础上进行。企业专业人员担任专业任课教师,专业教师负责、参加企业软件项目开发为本课程的开发打下良好的基础。在课程开发之初,我们引进2位具有多年软件项目开发经验的专业人员与学院教师、企业专业人员共同组建本课程的开发组,确保项目课程开发的质量。
2.2 课程项目的选择
课程项目的选择首先需要考虑能涵盖数据库应用系统开发的主要技术,课程项目专业、真实、实用才能确保课程符合数据库应用系统开发的实际需要,才能使学生得到真正的锻炼。其次,过于生僻的项目将影响学生对其业务流程的理解,最终影响教学效果,课程所选择项目的业务流程应当尽量为学生熟知、熟悉。此外,课程项目不能一味追求技术的完整和完全覆盖,而应将重点放在能充分体现数据库应用系统开发的核心、常用技术方面。
按照这种思路,我们最终选定学生熟悉的《班级信息管理系统》以及易于理解的《人事信息管理系统》为课程的项目。其中,《班级信息管理系统》作为课程的主线项目,《人事信息管理系统》作为课程的同步实训项目。
2.3 主线技术的选择
数据库技术纷繁复杂,如果不加选择地引入课程,影响学生对关键、核心技术的掌握,影响学生学习热情。重视主线技术的选择、力求简洁、高效、主线清晰、便于快速入门是课程主线技术选择的原则。
1)课程使用ADO对象数据库访问技术贯穿整个项目,技术简洁、高效、主线清晰。
2)课程放弃在实际开发中已较少使用、复杂的DAO技术以及效率低下、系统资源消耗大的其它数据控件技术。
3)课程通过4~6学时ADO对象技术学习后、即可编制代码访问数据库、进行简单操作、学生能尽快入门。同时,在项目的各个阶段都能使学生立即实现相应模块的功能、使学生尽早体验成功喜悦。
2.4 实用技术的引入
实际数据库应用系统包含很多常用、实用的技术和组件,这些技术与组件可以使得设计的系统更加真实和专业。由于实用技术内容较多,实用技术的引入策略非常重要。根据项目模块开发的需要,在项目开发过程中适时、渐进引入合适的技术与专业的组件,每个模块引入1~2项实用技术,在确保系统的真实性、专业性的同时有效降低学习难度。例如:
1)系统框架模块为显示系统主界面引入ToolBar、StausBar控件。
2)班级管理模块以树结构管理班级,引入TreeView、ImageList控件。
3)学生管理模块为展示班级学生列表引入ListView、DTPicker控件,为分类显示学生基本信息、家庭成员引入SSTab控件。
4)学生照片处理、班级档案管理模块,引入数据库图像、二进制数据处理技术。
5)学生奖励模块为展示学生奖励信息引入DataGrid等控件。
6)综合查询模块中实现数据库数据与Excel数据的交换。
7)登录身份验证模块使用静态变量统计非法登录次数。
8)在完成系统功能的主线下,体现系统效率的优化。如数据表增加记录,采用“select top 0 * from ...”语句取出该表的表结构而非返回整个记录集进行记录添加;使用较小开销的查询等技术减少大量数据的网络传输;照片显示算法分块处理图像数据,占用内存少,效率高。
9)项目逐步对各种可能的错误提供了有效处理,确保代码严谨、健壮。
2.5 课程的实施
针对不同的专业,《数据库应用系统开发》项目课程的实施可以安排在前导Visual Basic、SQL Server课程之后,按照单独的课程进行教学,典型的教学安排如表1;也可以将Visual Basic、SQL Server、数据库应用系统开发3门课程整合为一门课程教学,此时,课程计划分为3个阶段(Visual Basic基础、SQL Server基础、数据库应用系统开发),典型的教学安排如表2。
项目课程的重点在于培养学生独立项目开发能力,贯穿整个课程项目《班级信息管理系统》的开发安排了同步实训项目《人事信息管理系统》供学生开发实践。课程的考核以项目设计为主,重点考核学生项目开发能力。此外,课程还建立了由6个实用项目构成的项目库供学生自主选择、独立完成系统的开发。
3 《数据库应用系统开发》项目课程实施效果
我院计算机软件相关专业人才培养方案选择数据库应用系统开发作为软件开发主要方向。《数据库应用系统开发》课程自2004年起列入我院计算机系04/05/06/07级人才培养方案,从软件公司引进具有多年软件开发经验的专业人才加强课程建设的力量,组建了本课程的开发组,2005、2006年分别完成《数据库应用系统开发》院内讲义第1、2版。《数据库应用系统开发》课程自2005年在我院开设以来,先后完成了20余个班的教学,课程讲义在较短时间使学生初步掌握数据库开发技术,尽快体会成功喜悦,学生的学习兴趣和参与热情都高,取得良好教学效果。《数据库应用系统开发》教材建设列入学院2007年精品教材建设立项,获得学院经费支持并公开出版,得到多所院校应用。
项目教学的实践激发了学生学习软件开发的热情,学生学习软件技术热情高,2005~2007年连续三年我院学生计算机技术与软件专业技术考试报考率、通过率均位居常州所有高校第一,学生毕业设计质量显著提高,毕业生工作后的开发能力和学习迁移能力增强。此外,项目课程的开发和实施也对青年教师培养起到明显效果,许多青年教师通过项目课程的教学和实践,软件开发能力显著增强。
实践证明,工学结合、校企合作,以项目为主线的课程开发和实施无论对于学生还是教师培养都是一个行之有效的方法。
参考文献:
[1] 徐安东,李飞,邢晓怡.Visual Basic数据库应用开发教程[M].北京:清华大学出版社,2006.
[2] 李晓黎,张巍.Visual Basic+SQL Server数据库应用系统开发与实例[M].北京:人民邮电出版社,2003.
[3] 李长林,张丽华,王红.Visual Basic数据库应用系统开发从基础到实践[M].北京: 电子工业出版社,2005.
[4] 启明工作室.MIS系统开发与应用[M].北京:人民邮电出版社,2005.
关键词: 软件技术; 植保应用软件; 软件开发
当前, 随着我国信息化建设的飞速发展, 一些地区网络化建设进程的加快, 为植保计算机应用水平的提高提供了良好的机遇, 各地植保部门都已或正在准备配置较高档次的计算机硬件设备, 而与之相对应的植保计算机应用软件的缺乏则成为提高植保计算机应用水平的制约因素。因而开发高水平的植保计算机应用软件已迫在眉睫, 也是提高我国植保计算机应用水平的必由之路。本文结合计算机软件技术的发展和中国农业大学植保信息与软件技术实验室(IPM IST) 10 年来的实践经验就如何进行植保应用软件开发的一些技术性问题进行了探讨。
1 植保应用软件的开发
在当前形势下, 植保学科的科技人员应以软件工程理论为指导, 把握计算机应用的发展趋势, 选择适合于植保专业技术人员使用的应用软件开发方法和软件开发工具, 组织好软件开发人员, 开发高水平、高质量的植保应用软件系统。
1.1 以软件工程理论为指导
依据软件工程的一般原理, 一个软件从计划设计到废弃不用被称为软件的生存期( SW L ifeCycle) , 可以分为6 个阶段: 软件计划---软件需求分析---软件设计---软件编码---软件测试---软件维护,生存期中的各个时期又可细分为若干更小的阶段,不同的阶段划分方法, 就构成了不同的软件生存期模型(S W L ifecycle Model) , 也称为软件开发模型。在软件工程的发展过程中, 形成了许多种类的开发模型, 如瀑布模型(WaterfallModel)、快速原型模型(Rap id Pro to typ ing Model) 等。各种模型的应用要根据所要开发的具体的应用软件系统来确定,同时也与所采用的开发方法及使用的开发工具有关。值得指出的是, 不同的软件开发方法具有不同的特点, 对软件生命期工程阶段划分的强调程度也不一样, 但软件生命期的观点仍然是软件工程学的一个基本观点, 反映了软件发生、发展所应遵循的内在规律(谢荣传, 1995)。
植保应用软件系统的研制同一般性应用软件开发一样, 必须以软件工程学原理和方法为指导, 软件工程学理论与方法是高质量植保软件研制成功的根本保障。原因在于: 能够有效地进行系统计划与设计, 少走弯路, 避免不应有的错误, 从而缩短开发周期, 节约人力物力。能够顺利地进行系统开发, 在质量保证的前提下, 为用户提供正确、可靠的应用软件。能够科学地进行系统维护, 在实际应用中保持软件旺盛的生命力。回顾近几年已开发出较为优秀的植保应用软件, 如绿十字博士系统(全国农业技术推广服务中心研制)、粘虫迁飞专家系统(中国农科院植物保护研究所研制)、梨黑星病预测与管理专家系统ESPSPM (李保华等, 1996)、植检害虫图文信息系统(王之岭, 1996)、植物病毒检疫诊断支持系统PQV 2DSS (李明福, 1996) 以及北方地区蔬菜害虫田间识别系统PESTD IA G (李志红, 1997) 等, 这些软件的研制无一不渗透了软件工程的思想。黄淮海地区麦蚜预测预报系统(HH2AphidGIS) 根据软件工程理论进行了系统的设计, 以快速原型法为系统开发模型(高灵旺, 1998)。
从目前所进行的一些植保软件系统( 如 PQ 2IN FORM IS、PestD iag 等) 的开发来看, 由于系统的规模较小, 开发人员一般只有1~2 人, 因此在系统的生命周期中减少了一些有关文档, 如计划任务书、需求规格任务书和设计说明书等的书写。另外, 由于软件工程理论本身的发展, 即面向对象技术与可视化编程技术的发展, 也使得一些较为复杂的系统的开发设计也变得相对容易, 因而也不必完全按照上述模式来严格地书写有关文档, 但整个系统的开发还是依照软件生命期来完成的, HH2AphidGIS 系统的研制就是这样进行的。
1.2 开发平台的选择
操作系统是最重要的计算机系统软件之一。操作系统是对计算机系统自身的硬件和软件资源进行全面控制和管理(存贮管理、处理器管理、设备管理、信息管理和作业管理) 的程序, 使计算机在其总指挥下能够正常运行, 所有安装在计算机中的其他软件都依靠操作系统的指令来完成工作。操作系统是用户和计算机的接口, 也就是应用软件的开发平台。
选择开发平台时, 应充分考虑平台的实用性、简易性、可维护性、可扩展性、性能价格比、对网络的适用性、所用基本支撑环境的普及性及计算机应用的未来发展方向。目前, W indow s 系统由于用户界面友好、易于操作等特点而倍受用户的欢迎, 因而, 基于W indows的应用软件也成为当今软件开发商和用户的首选方案。以黄淮海地区麦蚜预测预报系统(HH-AphidGIS)的开发为例,在开发原型时选择了W indows3.1作为系统开发的平台。但从发展方向上看,Microsoft的32位W indows95操作系统已逐步成为微机应用的主要平台,而W indows95/98 N T 作为未来微机和网络系统的主要应用平台, 其发展势头是不可阻挡的;同时各地区测报部门的计算机应用也逐步在向Windows95/98 平台移植,W indow s 95/98 将作为该系统未来应用的主要平台。因而HH2AphidGIS系统最终放弃了Windows3.1,选择以Windows95为开发平台,以保证其技术的先进性,以及与未来计算机应用的发展方向保持一致。
1.3 开发方法的选择
根据软件工程理论对系统进行需求分析和设计后, 选择适合于系统需求的开发方法是十分重要的。总的来说, 用于应用软件系统开发的途径主要可归纳为2 种:
第一由系统开发人员使用Bo rland C+ + 、V isualBA SIC 或Delphi 等语言直接编程, 称为直接编程法。这种方法开发周期长, 费用高, 系统完成后的稳定性、健壮性均需大量的工作来保证, 而且对开发人员的要求较高。但这种方法优点是灵活, 开发者可以充分发挥其想象力, 灵活自如地设计出各种变化的用户界面, 并能够充分实现系统所要求的种种特殊功能。
第二使用市场已有的开发工具, 如A utho rware、M ult ibase 等来实现, 称为工具法。这种方法开发周期短、开发费用较低, 开发人员一般无需编程, 通过编写剧本、书写描述语言或编辑卡片等即可完成应用系统。系统的健壮性和稳定性依赖于所使用的开发平台或开发系统。开发人员很难突破开发平台所提供的各种功能的限制, 因而开发出的应用系统也较为模式化。
对于一个具体的系统而言, 需根据系统设计阶段的需求分析和开发人员的实际情况进行选择, 如V egePest 作为一个多媒体数据库就是选择用工具法作为其系统的开发方法, 而PestD iag 作为一个多媒体专家系统, 需进行严格的推理, 目前的一些工具软件还都不具备这种能力, 因而选择了直接编程法。HH2AphidGIS 系统作为一个集地理信息系统、多媒体、数据库管理、预测预报等功能于一体的实用性系统, 从系统开发的需求分析来看,HH2AphidGIS 系统不但需要多媒体功能的支持, 而且主要进行麦蚜的预测预报, 需进行模型的运算以及模型与GIS 之间的交互作用, 采用工具法无法满足这些要求, 因此, 该系统的开发选择了第一种方法, 即直接编程法。
1.4 开发工具的选择
如果选择了应用直接编程法进行植保应用软件系统的开发, 则选择适宜的开发工具就成为必须认真考虑的一个重要问题。如何选择恰当的工具,这取决于你使用的操作系统平台、开发工具易用性、应用软件的适用范围、要解决的问题、规模、技术发展方向和可扩展性等多方面的因素。工具的选择既要满足应用系统的功能需求, 又须满足其性能需求(如运算速度、打印速度等) , 也可以几种不同的语言平台进行混合编程, 以便取长补短。目前植保应用软件的开发应以可视化开发工具为首选工具。
随着计算机技术的不断发展, 编程工具也得到了迅猛的发展。近年来, 在众多的编程工具中, 可视化编程工具的发展格外引人注目。V isual BA SIC的推出使得"几分钟内就可编写一个W indow s 应用程序"已经不再是神话。而Bo rland Delphi 210 的推出则使可视化编程工具逐渐进入热潮。尤其是从1997年以来可视化编程工具成为一个非常活跃的领域,各软件厂商纷纷推出自己产品的新版本, 在功能、性能等方面均有较大提高, 各产品之间的竞争也更加激烈。
一般的可视化开发工具( 如V isual BA SIC,Power Builder 和Delphi) 都提供了可视化的开发环境, 提供了对OL E 构件(OCX) 的支持, 可以与多种数据库建立连接, 并且它们都有自己的底层编程语言等等(V isual BA SIC 用的是BA SIC, Delphi 用的是Object Pascal)。每种开发工具都有其技术特色和特定的应用领域, 因而每个工具都拥有其特定的用户群。但各产品在不断升级的过程中, 不断取长补短, 不断地融入许多竞争对手的产品的特点, 功能不断丰富,性能不断完善。
在HH2AphidGIS 系统开发过程中, 根据系统功能的需求选择了以Bo rland Delphi Client Server210 版作为系统开发的主要工具, 并辅以其它工具软件等。这主要是考虑了Delphi 以下几个方面的特点: ①借助Delphi 中控件和模板的使用与功能, 编写程序非常方便, 提高了开发应用程序的效率,②Delphi 预先将应用程序编译成经过优化的本地代码, 其执行速度明显高于同类产品; ③Delphi 的一个超强能力就是可以将原先在桌面型数据库开发的程序很轻易地让远端SQL 服务器接受, 甚至在数据来源改变后都无需对用户界面做任何的修改。同时用户不需要第三方的开发工具, 直接能够在Delphi 的集成环境中进行数据库操作。
1.5 开发人员的组成
计算机应用软件系统开发人员的组成是随着编程语言和开发工具的发展变化而变化的。计算机高级编程语言的产生使广大非计算机专业工作者(一般用户) 能够进入计算机应用领域。尤其值得一提的是, 近年来面向对象理论的发展和可视化开发工具的兴起, 大大降低了应用软件系统开发的难度, 减少了程序代码的书写量, 提高了软件开发的效率, 为广大非计算机专业工作者(包括植保工作者) 开发出本领域内高质量的应用软件系统提供了可靠的工具,使各领域内应用软件系统的开发进一步摆脱了计算机专业人员的限制, 而各领域的专家也逐步成为应用软件系统开发的主导人员。
根据以上分析以及从总结 IPM IST 实验室 10多年来的实践经验来看, 目前植保应用软件系统的开发可以植保专业人员为主。当然, 其中的一部分人应该既对软件工程理论和程序设计知识有一定的了解, 又是植保领域的专家。从应用软件系统的分析、设计, 到系统的最终实现, 系统开发人员都应把注意力集中在如何来反映植保专业的特点, 植保专业知识的收集、整理及其内涵的深入挖掘等方面, 而不是专注于冗长乏味的代码行的编写上。当今软件技术的发展, 尤其是面向对象技术和可视化开发工具的发展为之提供了便利的条件, 因此系统设计人员和应用领域的专家能够有机地融合为一体。
沈佐锐等人曾就植保领域专家系统的开发提出了产、学、研相结合的参与式协作方式。笔者认为这种方式同样适用于植保专业各个方面的应用软件系统的开发, 如多媒体数据库系统、信息管理与决策支持系统等。这种方式既能够保证专业应用软件系统的适用性与专业理论的紧密结合, 又能够有利于后续人才的培养。
黄 淮 海 地 区 麦 蚜 预 测 预 报 系 统 (HH-AphidGIS) 的开发就是采取了产、学、研相结合的参与式协作方式进行的, 由中国农科院植保所麦虫组、中国农业大学植保系 IPM IST 实验室以及山东、河北、河南等省的植保总站合作完成。其中, 中国农科院植保所负责项目的组织协调工作和有关试验的设计、安排, 上述三省植保总站提供历年麦蚜观测的数据资料, 中国农业大学植保系 IPM IST 实验室通过分析所获取的各种数据完成系统的开发研制工作,最后由三省植保总站进行应用及验证。
2 展 望
植保应用软件系统的开发, 经过近10 多年来的积累, 特别是近3 年来的飞速发展, 已成为计算机农业应用中一个较为活跃的领域, 并在农业生产及病虫害综合管理等方面发挥着越来越重要的作用。
我国目前已有一些科技示范区将计算机专家系统用于指导农业生产, 产生了巨大的经济效益和社会效益, 收到了良好的示范效果。随着计算机技术和国民经济的不断发展,在不远的将来农业计算机应用将会更加普及, 应用范围也会不断扩大, 这就相应地对农业计算机应用软件系统在数量和质量上提出更高的要求。因此, 开发出更多、更好、更加实用化的植保应用软件系统也就成为植保工作者责无旁贷的职责所在。对此, 我们应该有着清醒的认识, 抓住机遇, 为我国植保技术的发展提供更广阔的天地。
[ 主要参考文献]
[ 1 ] 高灵旺. 黄淮海地区麦蚜信息管理与预测预报技术研究: [ 博士学位论文]. 北京: 中国农业大学, 1998
[ 2 ] 谢荣传. 计算机软件技术基础. 北京: 北京科学技术出版社, 1995. 308p
[ 3 ] 姚 青, 黎 峰. 制作多媒体软件的两种方法. 微型计算机, 1997, 17(3) : 106~107
[ 4 ] 曹国钧主编. 最新Delphi 210310 入门、应用及实例详解. 成都: 电子科技大学出版社, 1997. 452p
关键词:独立学院;课程改革;人才培养;程序设计
随着计算机软件行业的发展与普及,十几年来计算机软件技术发生了翻天覆地的变化,而高等学校的教学内容、教学模式与教学方法却没有多大的改变,课程教学理念严重滞后于实际需要,教学效果存在相当大的问题。现在的计算机软件专业学生拥有的优势越来越少,就业压力也越来越大。对独立学院的计算机软件专业学生而言,更是如此。比专业理论知识,他们没有一本、二本的学生全面扎实,比实践操作能力,他们又远不及高职学生。那么独立学院应该培养怎样的计算机软件人才呢?学生将来毕业以后,凭借什么在社会上立足呢?这是我们老师一直在思考和探索的问题。
为适应新的形势,我院明确了计算机软件人才的定位:培养应用型软件人才。这个培养目标既是从独立学院学生的自身条件出发,又符合当前社会对计算机软件人才的需求。在这个培养目标的指导下,我们在计算机程序设计课程教学上进行了大胆尝试,修订了教学大纲,增加、删除了部分教学内容,并将新的教学模式与教学方法引入计算机基础教学中,取得了较好的效果。
1存在的问题
已往的教学经验表明,学生在学习程序设计类课程时最难的地方不是掌握某种程序设计语言的语法规范,而是掌握程序设计的基本方法。
程序设计语言的语法规范是死的,并且与任何一种自然语言相比,程序设计语言的语法规范更简单规则。因此,只要学生掌握好了程序设计的基本方法,再花费一定的时间掌握某一种程序设计语言的语法规范,就能用该程序设计语言设计程序,甚至达到精通水平。
具体而言,目前教学中存在的主要问题有:教学内容与教材组织过于陈旧;教学目标没有反映新形势的需要。其典型表现在:程序设计方法强调不够,抽象思维能力培养不足;某些程序设计中重要的概念讲授力度不足,如库与接口、UML建模以及目前流行的软件开发方法等,学生在实际的软件开发中无法满足企业的需要。
2构建程序设计基础培养四阶段课程体系
大多数独立学院的本科计算机软件专业现行的课程设计,与普通的一本、二本院校相比相差无几,没有突出独立学院的特点,也没有明确独立学院的培养目标。因此,对独立学院计算机软件专业课程体系进行改革迫在眉睫。我院以“计算机导论与C语言程序设计”为公共基础的程序逻辑训练、以“高级程序设计技术”为核心的程序设计方法培养、以“数据结构”为支持的数据与程序抽象能力培养、以“C++程序设计”贯穿面向对象程序设计新理念,并在大三大四高年级开设了Java、Linux、UML建模等程序设计类选修课程,形成了“基础训练+方法培养+提高能力+拓展层面+实践应用”的程序设计教学新模式[1],在强化程序设计能力培养过程中发挥了重要的作用。
3提出并实施四层次软件人才培养新模式
我院以课程体系为基础,提出并实施了“基础训练+提高能力+拓展层面+实践运用”的四层次软件人才培养模式。
3.1基础训练
程序设计基础训练课程开设在大学一年级,是大学阶段系统认识计算机、应用计算机的入门课程,通过程序设计的词法、语法及使用方法的学习,要求学生掌握、体会计算机解决问题的基本技能。在基础训练中,通过对计算机导论课程的学习,让学生认识并能熟练运用计算机编写程序;通过对C语言程序设计课程的学习,让学生初步掌握程序设计的方法,训练程序设计中的逻辑思维。
3.2能力提高
程序设计能力提高课程开设在二年级,主要从两个方面提高学生的程序设计能力:一是高级程序设计技术课程,重点学习典型的程序设计方法技术,便于学生系统地学习并掌握程序设计方法技术。二是数据结构课程,通过构造性思维的训练,重点突出数据抽象与程序抽象能力的培养,让学生在基础训练阶段之后能更深入地理解程序设计的概念。
3.3层面拓展
主要以市场需求为基础,包括工具类别与应用环境的拓展,以选修课形式开设在三、四年级。在具有良好C程序设计能力基础上,展开其他程序设计工具层面,如开设Java、VC++、VB等程序设计类选修课程,增强学生掌握新工具,举一反三的能力。随着我国经济发展,国外市场份额不断增加,熟悉和使用Unix环境已成为计算机软件专业应当掌握的重要技术,开设Unix环境编程和Linux程序设计等课程,将拓展应用环境,提高学生适应新环境的程序设计能力。
3.4实践应用
自2006年以来,我院就加大了程序设计课程中的实践课时比例,实践课时占到总学时的1/2或1/3,每门实践课都单独安排了实践课老师,指导学生更好地进行实践。在实践课设计中,我们既重视学生理论知识的巩固,又注重其解决实际问题能力的培养,因此,我们把实验自下而上分为知识层、应用层和综合层3个层次。
知识层注重对知识的理解和掌握,数据结构、数据库原理和Java程序设计等理论课增设了相应的课程设计,课程设计的主要内容是:按软件企业先进的项目管理和开发模式,以“项目驱动”进行软件系统开发的实训。应用层重点在于巩固与应用,学生在校期间参加课外兴趣小组或在毕业论文设计中,大部分学生都能使用VC++做系统级深层次应用。综合层则关注综合与创新,学校鼓励学生参加大型的综合性IT比赛,如ITAT、大学生挑战者杯创业大赛等。
3.5创造性思维能力的强化
计算机程序设计能力,对计算机专业学生的知识结构、技能的提高和智力的开发变得越来越重要,技能培养的重要程度决不亚于知识传授。对程序设计能力的提高来讲,编程序不难,编好程序不易。质的飞跃来自量的积累、艰苦的磨炼,所以良好的专业技能和创造性思维培养的关键在于实践。程序设计是高强度的脑力劳动,是创造性的艺术,只有提高了科学思维,学会了程序设计的真本领,才会将知识与技术变成能力,应用自如。
3.5.1案例驱动教学:兴趣引导
针对独立学院学生思维灵活但学习自觉性较差的特点,我们采用案例教学法,避免了传统填鸭式教学方法的呆板,通过实例演示,让学生对所学知识产生兴趣,有了一定的感性认识之后,再提升到理论高度,循序渐进地掌握知识。经过多次教学的探索,总结出重点讲授解题思路、算法设计及编程构思,突出上机训练,在编写程序过程中让学生自己进行探索性的学习,程序设计中的成果能极大地增加学生的成就感、培养学生程序设计的兴趣,并达到更加牢靠地巩固理论知识的目的。好的程序设计案例所采用的程序设计方法教会学生用适当的语言清晰地表达其思考过程。
3.5.2指导―大运动量实践―反馈训练:加强创造性思维培养
数据结构[2]的学习过程,是进行复杂程序设计的训练过程。技能培养的重要程度不亚于知识传授。难点在于让学生理解,习惯算法构造思维方法。针对数据结构技术性与综合性较突出的特点,我们提出并实施了“指导―大运动量实践―反馈训练”教学法。通过作业练习、课程实习、课程设计3个环节实现实践过程,前者偏重于对课程内容的理解,后者侧重于软件设计综合训练,促进了专业学生逻辑抽象能力和创新能力的培养。
3.5.3项目训练:提高应用能力
通过“项目训练”[3]方法,我们提出课程设计规范要求,突出关键技术要点,贯穿基本技能训练主线,精心设计综合性实验,体现加强实践能力培养的重要思路。数据结构课程设计时进行软件开发综合训练的第一门课,通过选用具有一定实用性的综合题目,采用学生个人进行和小组合作的方式,通过问题分析、总体结构设计、用户界面设计、程序设计基本技能和技术的一系列过程,培养学生动手实践、合作研究、协作开发大型软件项目的能力,培养学生采用软件工程正规方法进行设计与实现,为专业技能训练奠定了基础。“项目训练”方式将学生引入具体的项目研发,使学生有更多的主动学习机会,培养了科研能力。
3.5.4提高学生的兴趣与创新能力
竞赛等多种活动为学生提供了展现程序设计能力的舞台,激发了学生学习的主动性。我们已连续3年开展全校“电脑文化节”、“网页设计大赛”、“Flash竞赛”、“计算机知识竞赛”;学生参加省级、国家级数学建模比赛,6人次获国家级奖励,20人次获得省级奖励;学生在程序设计大赛中取得优异成绩,获得多项奖励,3人次获ITAT国家级奖,多人次获省大学生挑战杯一等奖。
4结语
计算机课程改革势在必行,特别是对于独立学院来说,更是迫在眉睫。改革的成功与否将直接关系到学生以后的就业。在进行计算机课程改革的基础上,我们针对软件人才的培养,提出程序设计教学的新模式和以设计为中心的能力培养新方法。作为一种有益的尝试,新的课程体系通过一种有趣的、面目可亲的方式向学生说明了创造性思维能力在程序设计中起到的重要作用。
参考文献:
[1] 翟玉庆,邓建明. 计算机科学研究型人才培养模式的探讨与实践[J]. 计算机教育,2005(1):31-33.
[2] 耿国华. 数据结构[M]. 北京:高等教育出版社,2007.
[3] 王志英,宁洪,戴葵. 强化计算机专业实践教学[C]//第七届全国计算机系系主任论坛论文集. 北京:高等教育出版社, 2004:37.
Reform of Computer Courses and Training of Software Personnel in Independent Colleges
LIU Ya, TAN Qian-mao, ZHOU Li
(Computer Science and Engineering Department, Jinjiang College, Sichuan University, Pengshan 620860, China)