当前位置:首页 > 智能硬件 > 智能硬件
[导读] 限于华文学生的汉语能力,在其进行计算机技能课程的学习和测试过程中,最需要注意的问题就是其对计算机技能的学习和测试能突破语言关。用ASP.NET基于组件的三层框架的开发技术构建了辅助系统来实现该功能,并提出和实现了Web中的自定义分页功能,有效节省了客户机资源和网络带宽,做到了“按需索取”,相对于传统Web应用,减少了客户端与服务器的数据交互量。设计应用于学生的课程学习和测试中,取得了很好的效果。

华文教育首先是指为掌握华文而兴办的教育。在具体语境中,它的涵义可能有如下变化:(1)着眼于办学主体,将它理解为华侨华人在居住国与入籍国兴办的教育,略近于华侨教育、华人教育;(2)着眼于教育对象,将它理解为面向海外华侨华人子女的教育,与华人华侨青少年教育相通;(3)着眼于教学手段,将它解释为运用华文进行的教育,其科目不限于语言文字;(4)强调教育的社会功能,将掌握华文视为学习、继承与发扬中华文化优良传统的途径,由此将华文教育的外延由语言文字领域扩展到文化领域[1]。
1 华文学生计算机基本操作技能现状
    华文学生计算机基本操作技能是计算机知识的入门课程,内容着重于计算机的基础知识、基本概念和基本操作技能,并兼顾实用软件的使用和计算机应用领域的前沿知识,为学生熟练使用计算机和进一步学习计算机相关知识打下基础。其教材的编写和国内学生计算机操作技能的教材基本一样,但对于教材的描述语言是经过汉语学者遴选的。通过该课程的学习,使学生在基本掌握计算机基础知识的基础上理解一些计算机的常用术语和基本概念;学生能较熟练地使用Windows 2000操作平台,熟练掌握文字处理软件Word、表格处理软件Excel 及演示文稿制作软件PowerPoint的基本操作,掌握Internet和浏览器以及网页制作软件FrontPage的基本使用方法,掌握计算机信息安全等。
    (1)在平时的课堂授课中:由于计算机技能课都是中文授课,这就是一种华语教学上的计算机技能培训。学生有时可能会听不懂老师用中文讲授的课程内容,但是老师的操作步骤是一种感性的认识,学生基本都会明白,那么当学生阅读教材或者进行实训的时候,遇到中文表述的操作步骤时,如果他们能够借助一个辅助系统进行对应的母语的查找,则可解决问题。
    (2)技能测试中的情况:华文学生的计算机测试是语言关基础上的计算机测试,学生首先读懂了中文题目,进一步才是答题。根据笔者的教学和监考评卷经验,很多情况下是因为学生中文试题题目没有读懂以至于他们解答不了这个题目或者解答不正确,但这并不代表他们不会这项计算机技能[2]。
 基于以上情况,可以按章节、按难易程度设置检索关键词和关键短语,并为关键词和短语配图或操作视频,建立一个这样的系统供学生上课和学习时使用。该系统是课程范围内的“金山词霸”,辅助学生学习,这样学生就不必要死记硬背华文词语进行计算机基本操作技能的学习。如果在平时的学习中学生已经能熟练地操作该辅助系统,测试时,即使题目的中文再复杂,学生把不懂的关键短语弄明白后也可以做到基于语言关基础上的作答了[3]。
    系统采用.NET三层框架的模式进行开发,在应用系统进行查询和浏览时,常常要显示多页的内容,为了有效节省客机资源和网络带宽,做到 “按需索取”,相对传统Web应用减少了客户端与服务器的数据交互量,采用自定义的分页技术来改善资源利用率,在Internet或者LAN内都能有效地节约宝贵带宽资源,提高系统的响应和查询效率。
2 .NET分页技术与自定义分页技术
2.1 传统分页技术

 DataGrid 控件内置地支持对数据源的记录的分页操作。例如,假定要显示一个计算机基本技能名词列表,其中包含几百条记录,但并不想一次在一个页面中显示所有这些记录,而是要把这些记录分放到多个逻辑页面中,此时可以通过允许AllowPaging属性并且创建一个子程序来修改当前页面,由此来允许DataGrid的分页操作。在允许分页操作时还有一个重要的要素,那就是只有存在DataGrid控件的数据源实现了ICollection接口时才能允许分页操作。DataReader没有实现这种接口,因此就必须改用DataTable。页面内显示的记录数由DataGrid控件的PageSize属性决定,在默认情况下,该属性值为10,在程序清单中把它设为其他值以便每页显示自定义的记录[4]。
2.2 自定义分页技术原理
    分页是Web应用程序中最常用到的功能之一,也是许多ASP.NET程序员最头疼的问题。ASP.NET中自带的可以分页的DataGrid(ASP.NET 1.1)和GridView(asp.net 2.0)控件可定制性差、无法通过Url实现分页功能等,而且有时需要对DataList和Repeater甚至自定义数据绑定控件进行分页,手工编写分页代码不但技术难度大、任务繁琐, 而且代码重用率极低,每次当浏览新的页面时,所有的记录都必须从数据库检索出来。因此,如果对有几十万条记录的数据库分页时,这几十万条记录必须在每次移动到新页面时检索到内存中。本文将实现一个自定义分页的解决方案来避开这个局限,只要检索所需要的记录而不是获取要在每页中显示的每条记录。
 AspNetPager分页控件弥补了ASP.NET分页的不足,提出了与众不同的方案解决ASP.NET中分页问题,即将分页导航功能与数据显示功能完全独立开来,由用户自己控制数据的获取及显示方式,因此可以灵活地应用于任何需要实现分页导航功能的地方,如为GridView、DataList以及Repeater等数据绑定控件实现分页、呈现自定义的分页数据以及制作图片浏览程序等。AspNetPager控件和数据是独立的,因此要分页的数据可以来自任何数据源,如SQL Server、Oracle、Access、mysql、DB2等数据库以及XML文件、内存数据或缓存中的数据、文件系统等[5]。
3 .NET自定义分页技术
3.1 系统开发背景

    ASP.NET可以使用.NET平台快速方便地部署三层架构。ASP.NET革命性的变化是在网页中也使用基于事件的处理,可以指定处理的后台代码文件,可以使用C#、VB、J#作为后台代码的语言。.NET中可以方便地实现组件的装配,后台代码通过命名控件可以方便地使用自己定义的组件。显示层放在ASP页面中,数据库操作和逻辑层用组件来实现,这样就很方便地实现了三层架构。用ASP.NET部署三层架构来开发华文教育下的计算机技能关键词和关键短语的查询系统,系统的架构如图1所示。

 

 

    首先在SqlServer数据库中建一个数据库CompWord,在CompWord中建表TB_CompWord,如表1所示。

    (1)打开VS.NET,在新建项目中选择Visal C#项目,模板选择ASP.NET Web应用程序,为本方案命名为CompWord。
 (2)建立数据库访问控件DBLayer,此控件用来调用数据库数据,封装所有的数据处理操作。
 (3)建立逻辑处理控件BusinessLayer,此控件用来封装所有的逻辑处理操作。
 (4)关于引用。因为BusinessLayer要用到自定义的Web控件,所以必须添加引用。右键点击BusinessLayer的“引用”,选择.NET的“AspNetPager.dll”双击选中即可。
3.2 关键实现技术
 可以通过DataGrid的自定义分页功能来减少资源使用和提高效率。DataGrid自带的分页功能实现起来虽然比较方便,但是效率不高,每次都需要读取所有页(整个记录集),而加载的只是其中一页,造成了资源的浪费,记录多又会使效率变得很低。下面通过DataGrid的自定义分页功能来减少资源使用和提高效率。前台的主要代码如下:
    界面层添加分页的导航条:<webdiyer:AspNetPager ID="pager" runat="server" PageSize="7" NumericButtonCount="8" ShowCustomInfoSection="left" PagingButtonSpacing="0" ShowInputBox="always" CssClass="mypager" HorizontalAlign="right" OnPageChanged="ChangePage" SubmitButtonText="转到" NumericButtonTextFormatString="[{0}]" alwaysshow="true"></webdiyer:AspNetPager>
    在逻辑层,添加如下的引用:
    cmd = new SqlCommand("GetCiAll", conn);
         cmd.CommandType = CommandType.StoredProcedure;
         cmd.Parameters.Add("@pageindex",1);
         cmd.Parameters.Add("@pagesize",1);
         cmd.Parameters.Add("@docount",true);
         pager.RecordCount = (int)cmd.ExecuteScalar();              BindData();
    其中的GetCiAll为一个写于数据库上的存储过程。
    Web应用程序是显示数据库中数据的一个非常好的方法,可以把业务复杂并有访问规则和安全规则的数据库数据以一种简单、直观的方式向用户提供查询和更新的功能。用户判断数据库应用程序很常用的一个标准就是处理数据的快慢。许多Web页面都向用户提供了多种可搜索的列表显示来有效地定位记录的位置,一个比较简单而且常用的例子就是在线图书查询系统,它允许用户按作者、书名或者主题来检索图书信息。
 ASP.NET提供了一个DataGrid控件,可以比ASP更方便地创建数据列表,DataGrid控件除了内建的数据表现和方法之外,还允许用户自己定义表现形式。分页技术为用户可管理的数据查找提供方便。DataGrid内建的分页技术很容易实现,但数据量很大时,它的方便性是以牺牲性能为代价的。下面就看看如何通过自定义的分页方法来快速处理大量数据的结果集。这里讨论的方法比DataGrid的默认分页方法更加快速和有效,这是因为每次请求不需要把全部的数据结果发送到Web服务器,相反,它只需要发送每个页面需要的那些数据集。例如:一个用户只要求100个页面中每页显示25条记录的第4页的结果集,服务器只需要发送第75~100行的数据即可,而不是1~100行的完全数据。默认的传送方式如图2所示。

    从图2中可以看出,DataGrid的内建分页方法效率不高,每次请求都必须把整个查询结果发送给Web服务器,Web服务器再把数据分成相应的页面。利用DataGrid的内建的分页方法尽管很简单,但是由于Web应用的无序性特征,一个用户每次从一个页面转向另外一个页面时,DataGrid对象都被销毁并重新创建,这就意味着数据库服务器每次都必须发送全部的结果集。
    自定义的分页方法只返回所要检索的那些结果集,如图3所示。

    从图3可以看到,数据库每次只需要返回所要显示的数据记录。利用AspNetPager分页导航,再自定义分页存储过程,提高分页效率。
 一般来说使用存储过程有以下优点:
    (1)减少网络数据传递流量,提高T-SQL语句执行速度。用户在使用到SQL语句时,如用户进行数据查询,数据插入时首先要把相关的SQL语句发送到SqlServer,在进行比较复杂的查询等操作时就要频繁向服务器发送这样的SQL语句,浪费网络带宽,效率低下且加重服务器的负担。而存储过程经过编译存放在服务器上,使用存储过程要比单条SQL语句快得多。
    (2)适合模块化编程,提高系统的通用性,存储过程在被创建以后,可以在程序中被多次调用而不用重复编写SQL语句。
    (3)可以更有效地管理用户操作数据库的权限,通过SqlServer分配权限更安全。
    部分代码如下:
CREATE procedure GetCiAll
        ( @pagesize int,
        @pageindex int,
        @docount bit  )
        as
        set nocount on
        if(@docount=1)
        select count(id) from mingci
        else
        begin
        declare @indextable table(id int identity(1,1),nid int)
        declare @PageLowerBound int
        declare @PageUpperBound int
        set @PageLowerBound=(@pageindex-1)*@pagesize
        set @PageUpperBound=@PageLowerBound+@pagesize
        set rowcount @PageUpperBound
        insert into @indextable(nid) select id from mingci
        select*from mingci O,@indextable t where O.id=t.nid
        and t.id>@PageLowerBound and t.id<=
                 @PageUpper
                 Bound order by t.id
        end
            set nocount off
          GO
 对来华学习汉语的华文教育专业本科一年级的学生进行实验,实验总抽样人数为20人,其中平时学习和测试中使用本系统的有10人,应用传统方式学习的有10人。经过一个学期的学习,学期末进行测试,结果表明借助于辅助系统学习和测试的同学的计算机技能成绩普遍好于未使用该系统的学生。
 本文通过分析.NET技术的特点以及华文学生计算机技能的学习和测试的现状, 发现.NET技术非常适合于华文计算机技能辅助系统的建设。通过使用.NET自定义分页技术应用于华文学生计算机技能学习辅助系统减少了客户端和服务器的数据交互量,减少了带宽的占用。随着中国华文教育及世界华文教育的发展,计算机辅助系统将成为课程教学和测试的主要辅助工具,.NET技术和学科的结合将更加紧密。
参考文献
[1] 中国华文教育网.http://www.hwjyw.com.
[2] 何克抗,许骏. IT 技能测评自动化[M].北京:科学出版社, 2005.
[3] GENEEN S. Computer assisted-assessment: staff viewpoints on its Introduction Within a New University [J]. Innovation & Teching International,2002,39(2):145 - 153.
[4] 陈冠军. 征服ASP. NET 2. 0 AJAX-开发技术详解[M]. 北京:人民邮电出版社,2007.
[5] 马军.精通ASP.NET 2.0 网络应用系统开发[M]. 北京:人民邮电出版社,2006.

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

上海2024年4月17日 /美通社/ -- 在2024 F1中国站即将拉开帷幕之际,高端全合成润滑油品牌美孚1号今日举办了品牌50周年庆祝活动。三届F1年度车手总冠军马克斯•维斯塔潘也亲临现场,共同庆祝这一里程...

关键字: BSP 汽车制造 行业标准 产品系列

深圳2024年4月17日 /美通社/ -- 今日,华为举办全球分析师大会,在"加速迈向网络智能化"主题论坛中,华为数据通信产品线副总裁赵志鹏发表了主题演讲,阐述了华为全面引入AI技术,从组件级、任务级...

关键字: NET 华为 智能化 网络

北京2024年4月17日 /美通社/ -- 2024年4月13日,由北京康盟慈善基金会主办的"县域诊疗,规范同行"——肿瘤诊疗学术巡讲项目首站在广州隆重召开。本次会议邀请全国多位肺癌领域专家和县域同道...

关键字: AI技术 医疗服务 BSP 互联网

海口2024年4月16日 /美通社/ -- 4月14日,在中法建交60周年之际,科学护肤先锋品牌Galenic法国科兰黎受邀入驻第四届中国国际消费品博览会(以下简称"消博会")法国馆。Galenic法...

关键字: NI IC BSP ACTIVE

上海2024年4月17日 /美通社/ -- 每年4月17日是世界血友病日。今年,世界血友病日以"认识出血性疾病,积极预防和治疗"为主题,呼吁关注所有出血性疾病,提升科学认知,提高规范化诊疗水平,让每一位出血性疾病患者享有...

关键字: VII 动力学 软件 BSP

伦敦2024年4月16日 /美通社/ -- ATFX宣布任命Siju Daniel为首席商务官。Siju在金融服务行业拥有丰富的经验和专业知识,曾在全球各地的高管职位上工作了19年以上。Siju之前担任FXCM首席商务官...

关键字: NI AN SI BSP

德国斯图加特和加利福尼亚州普莱森顿2024年4月16日 /美通社/ -- 全球高科技设施设计、工程和交付的领先企业Exyte宣布,计划收购全球领先的安装服务、设备和技术设施管理提供商—Kinetics集团(简称"Kine...

关键字: NET TI TE IC

随着信息技术的迅猛发展和大数据时代的到来,机器学习成为了人工智能领域中的核心技术之一。机器学习是通过模拟人类学习行为,使计算机系统能够从数据中自动发现规律、提取特征并进行预测和决策的过程。它在诸多领域取得了广泛的应用,包...

关键字: 计算机 人工智能 机器学习

随着大数据时代的到来,数据处理成为了一项至关重要的任务。传统的数据处理方法往往面临着效率低下、准确性不高等问题,而机器学习技术的兴起为数据处理带来了全新的解决方案。本文将深入探讨机器学习在数据处理中的应用,并分析其优势和...

关键字: 数据处理 计算机 机器学习
关闭
关闭