APP下载

基于三层架构的互动媒体学习社区的设计与实现

2019-05-22陈士磊

电脑知识与技术 2019年10期
关键词:教程控件页面

陈士磊

摘要:近年来,随着互联网技术的不断进步以及人民生活水平的不断提高,网络所起到的作用越来越重要,学习不仅仅局限于传统的学习形式,网络学习也是信息化社会学习的一种主要的途径,而且网络学习不受时间、地域的限制,它的学习资源丰富,学习时间可以根据学习者的时间任意而定,同时通过网络学习还可以进行在线交流,对学习者创新能力以及认知能力的发展都有很大的作用。三层架构是一种管理项目的方法,能把程序中的代码分类管理,更清晰更加的方便,该文介绍的互动媒体学习社区就是基于三层架构的方式进行的。

关键词:互动媒体;三层架构

中图分类号:G642 文献标识码:A

文章编号:1009-3044(2019)10-0186-03

开放科学(资源服务)标识码(OSID):

目前網络所起到的作用是不可估量的,网络除了提供给我们丰富多彩的资源,包括文档资料以及图片资源,但随着互联网以及社会的发展,传统网络提供的这些资源已经不能够满足学习者的需求,学习者除了要求有视觉上的刺激外另一方面还追求听觉刺激,因此产生了视频的资源包括视频和音频等资源。多媒体互动学习社区正是为了满足学习者这一需要而产生的。互动媒体学习社区是一个虚拟的学习社区环境,是一个基于互联网借助多媒体以及编程语言制作的具有特点功能以及特殊结构的教学网站。互动媒体学习社区和传统的教育相比具有突破时空的限制、资源更加丰富等特点。学习者可以通过这个环境发布教程,观看教程,进行在线交流讨论。

1 分层架构概述

1.1 分层模式

分层模式在日常生活中是最常见的一种架构模式,而且是很多架构模式的基础,分层模式主要是指把组件分割到不同的层中,每一层都保持独立性但还和其他层存在关联性,分层模式的关键部分在于每一层都对另一层有依赖,系统耦合的方式更加的松散,从而整个系统更加易于维护。分层模式有两层架构和三层架构之分。

1.2 二层架构

所谓的二层架构是把程序分为用户界面层和数据访问层,数据库存放在数据访问层中,用户界面层一方面实现用户的交互,另一方面通过数据访问层访问数据库,从而把数据库中的数据通过用户界面层显示出来。

1.3 三层架构的基本概念和作用

三层架构是为了让程序代码更易于管理,通常把整个业务应用划分为三个层次,从上到下依次为:数据访问层,业务逻辑层和表现层。

三层架构就是在项目开发过程中根据代码的不同功能,分别对代码进行存储与调用,这些代码会被存放在数据访问层、业务逻辑层和表现层中,其中表现层(UI)主要用于存放与用户交互的展示页面,业务逻辑层(BLL)主要用于存放针对具体问题对数据进行逻辑处理的代码,数据访问层(DAL)主要用于存放对原始数据进行操作的代码,它封装了所有与数据库交互的操作,并为业务逻辑层提供数据服务。

1.4 三层架构的优点和缺点

三层架构是一种通用的项目开发方式,可以极大地提高项目的可扩展性和可维护性,同时代码结构清晰,耦合度降低,同时提高了可维护性和可扩展性,三层架构能适应需求的变化,降低维护的成本和时间。但也存在一些缺点,包括增加了开发成本,降低了系统的性能,因为三个层次存在的关系,如果在表现层中增加一项功能的话,需要同时在相对应的业务逻辑层和数据访问层中都增加相应的代码。

2 系统设计

2.1 系统概述

根据需求分析的描述以及实际考察,现制定网站实现功能包括:操作简单方便、界面简洁美观。主要包括注册、发布下载教程、密码找回功能、留言功能、查询功能、后台管理功能,保证系统运行稳定,安全可靠。

(1)三层结构模拟

用户注册成为会员后,把自己的需求提交给管理员,管理员根据用户的情况进行反馈信息,同时向数据访问层提交数据申请,数据访问层主要是从数据库取数据,然后反馈给业务逻辑层,然后业务逻辑层反馈给表现层实现整个操作流程。

(2)业务流程图

对于整个网站的流程,用户必须是会员才能享受下载和发布数据的特权,同时可以实现在线互动交流,同时在首页用户可以通过查询快速找到需要的教程,管理员通过后台进行整个网站的管理和维护,其中包括对于用户的管理,教程的管理以及留言管理等。

(3)系统功能结构

根据互动媒体学习社区的特点,可以将其分为前台和后台两个部分设计。前台主要是静态页面,包括会员可以观看视频、发布留言,观看新闻等消息。后台主要是对于前台页面的管理,包括管理视频的增加、删除、更改等。

(4)系统查找功能

在首页中提供了查找功能,根据输入的内容进行高级查找,用到了文本框,下拉框,多选按钮,BUTTON等控件,把所有的这些控件放在一个panel控件中,

用到的关键性代码如下:

(5)文件上传功能

文件上传使用Upload控件向指定目录上传文件。该控件包括一个文本框和一个浏览按钮。用户可以在文本框中输入完整的文件路径,或者通过按钮浏览并选择需要上传的文件。

文件上传控件不会自动上传文件,必须设置相关的事件处理程序,并在程序中实现文件上传。

2.2 开发环境

整个网站在Microsoft Visual Studio 2010集成开发环境下进行,网站的开发语言采用ASP.NET+C#语言,网站的后台数据库选用Microsoft Access,网站运行平台为Windows系列,服务器端WEB服务器采用Internet 信息服务(IIS)管理器,数据库服务器为Microsoft Access,网站服务器运行环境为Microsoft .NET Framework SDK v2.0

2.3 数据库设计

本程序采用Access 作为后台数据库,数据库名称为shequ,其中包含1个数据表(公告信息表、会员信息表、教程信息表、留言信息表、语言类型表和视频教程信息表)

通过对网站进行的需求分析、网站流程设计以及系统功能结构的确定,规划出系统中使用的数据库实体对象分别为公告信息实体、会员信息实体、留言信息实体、视频教程信息实体(由于视频教程信息实体和语音教程信息实体类似,这里只给出视频教程信息实体)和语言类型实体。

2.4 三层架构的功能实现

(1)数据访问层的实现

数据访问层主要用于获取数据库中的数据,需要使用数据表的实体模型,在Model类库中添加一个类文件,该类文件和数据表中的字段相对应。同时需要在数据访问层中添加对数据实体模型的引用。然后通过编写类文件实现从数据库中获得数据并将数据封装到实体类的对象中。

(2)业务逻辑层的实现

在数据访问层中获得了数据库中的数据,然后就可以在业务逻辑层调用数据访问层中的数据,并把数据返回给表现层,首先需要先添加数据访问层的引用,并在业务逻辑层添加一个类文件,在类文件中添加方法实现获取数据访问层对象的目的,并添加返回表现层数据的方法。

(3)表现层的实现

表现层主要是页面的设计,可以使用服务器控件、按钮文本框、图片等一些标签来实现布局。表现层用户界面设置完成后,调用业务逻辑层的功能代码来实现具体的操作。

3 网站部分页面的实现

3.1 首页设计

首页设计的好坏直接影响到浏览者及用户对本网站的印象,页面整体布局要合理,简洁美观。在网站首页中包括以下几个模块:网站导航(包括发布教程、视频课堂、语音课堂、注册、联系我们)教程搜索(可以根据教程类型和教程语言进行搜索)网站公告(网站近期的动态)用户登录最新发布教程(包括最新发布的视频教程和语音教程)教程排行榜(包括点击率最高的视频教程和语音教程)。

1)设计步骤

(1)在该网站中新建一个Web 窗体,将其命名为index.aspx,用于显示网站的首页。

(2)在Web 窗体中添加Tabel表格,用于页面的布局。

(3)在Tabel表格中添加相关的服务器控件

2)调用的方法

在主页Web 窗体的加载事件中调用各个功能绑定到DataList控件上的方法。

3)页面实现

3.2 用户注册页面的设计

网站前台设计的质量以及浏览的速度,色彩的搭配等直接影响用户对于网站的印象,因此在设计前台的时候必须要保证色彩搭配合理,页面整体布局简洁美观,学习者可以通过注册成为会员来获取更多的信息。用户注册登录后可以进行视频的上传以及下载功能,但用户注册采用的是.net 中的验证控件,包括用户名、密码、确认密码、验证码、密码提示问题、密码提示问题答案等控件。这里面用到不能为空的控件,密码设置规则控件,确认密码和密码保持一致控件,文本框控件等。这些信息通过服务器控件进行设置。

当用户添加合法的注册信息后,要通过.net 提供的对象以及方法把用户的注册信息保存在后台数据库中,在保存的时候要考虑到用户数据信息的安全性,因此需要加密处理。但是为了防止用户忘记密码可以提供找回密码功能,当别的用户在进行注册的时候,系统首先把信息和数据库中的信息进行比对,如果存在用户名相同的情况,会提示该用户名已用,换其他用户名。

3.3 后台页的实现

管理员通过输入用户名和密码进入后台,后台可以对注册的用户分配级别以及相对应的权限。用户可以分为普通用户、超级用户,普通用户可以进行简单的操作,超级用户可以对普通用户进行管理包括删除以及加入用户。管理员可以对公告,教程和用户进行具体的管理,下图为后台的主要功能区页面,点击进入后可以实现公告以及视频、语音的增加和删除等操作。

参考文献:

[1] 赵威,王娜.关于高职毕业生跟踪调查对高职人才培养的作用[J].职业教育研究,2013(1):44-45.

[2] 潘永安,袁亚传.基于 .NET 的毕业生跟踪调查系统研究与设计[J].教学与教育信息化,2015(10).

【通联編辑:代影】

猜你喜欢

教程控件页面
刷新生活的页面
高效渲染教程
《阅读教程》三、四册修辞格分析
ASP.NET服务器端验证控件的使用
网站结构在SEO中的研究与应用
浅析ASP.NET页面导航技术
Spreadsheet控件在Delphi数据库系统中的编程与应用