没有合适的资源?快使用搜索试试~ 我知道了~
首页"Web技术构建单词记忆软件"
本文是一份自考计算机及应用专业的毕业设计,主要内容是关于Web单词记忆软件的开发。文中首先对现有单词记忆软件进行了市场和技术上的分析,接着针对最新的Web技术现状,包括HTML5、Node.js和NoSQL等,详细介绍了各种开发技术和需求分析。在此基础上,提出了基于最新Web技术构建单词记忆软件的总体设计,并讲解了软件的总体实现思路。最终,通过对软件的各项设计和实现,完成了Web技术单词记忆软件,并对未来的发展进行了展望。
资源详情
资源推荐
12
本课题软件,也是首次将比较复杂的传统桌面应用程序以 HTML5 为基础,以 MVP 为构
架,以 NoSQL 为数据库结合的一次尝试。这三者的结合无论是在单词记忆软件中,还是在其
他应用软件领域,都是一次全新的尝试。
1.3.3 小节总结
本软件的这些特点,若不是和最新的 Web 技术结合,而使用传统的软件开发技术,是很
难全部兼顾的,即便做到,成本也会很高。而本课题软件在较低的成本下做到了跨平台和各
种创新特点,这本身就是一种全新的尝试。
1.4 文章的组织结构
在前面的绪论中,本文对单词记忆软件的现状及其发展、本软件实现所在的基本技术和
社会背景、以及本软件对比同类软件的各种优势做了介绍。
在接下来的部分里,本文的组织结构如下:
(1) 在第二章,本文介绍了本课题软件设计上所使用的一些基本的使用技术,说明了
这些技术的主要特点,以及本课题软件的联系,说明了为什么使用这些技术。
(2) 在第三章,本文介绍课题软件的总体需求分析,说明了一个单词记忆软件所应该
拥有的功能,这些需求分析会在本课题软件中逐一实现。
(3) 在第四章,本文介绍了课题软件的总体结构划分和各模块的概要设计,以及课题
软件为什么如此划分模块。
(4) 在第五章,对课题软件所使用的数据库做了分析和设计。
(5) 在第六章,本文详细介绍了软件的详细设计,及各个模块的算法流程和实现,同
时也说明了软件在实现过程中所遇到的困难和问题。
(6) 在第七章,本文介绍了软件界面的设计思路和实现。
(7) 本文在最后简短地总结了毕设期间所做的工作,总结了本软件的局限性,并对后
续任务做了初步设想与规划。
13
第二章 课题软件使用技术简介
本章介绍本课题软件使用的各种使用技术,与使用这些技术的原因和特点。
2.1 HTML5 技术简介
2.1.1 引言
HTML5 是 HTML 的最新标准,草案于 2008 年发布,W3C(万维网联盟)于 2012 年 12
月 17 日宣布 HTML5 规范开发完成。新标准将包括更强大的编程接口。这种更新将会解放浏
览器,让浏览器更少的依赖 Flash 等第三方插件
[3]
。
HTML5 总体来说是一些以 HTML5 的 Web 规范为基础的新技术的统称,一般宏观来看包
括 HTML5 技术,CSS3 技术,Websocket 技术等。这些技术改变了互联网应用的开发方式和
使用方式,可以给开发人员以更方便的开发工具,给予用于以更好的用户体验。
2.1.2 HTML5 的主要特性
(1) 离线应用缓存(Offline Application)。此功能不同于以往浏览器的缓存功能,此功
能提供给了开发者真正将 Web 应用存储于本地的方式,使得 Web 应用能超脱于传
统 Web 网站应用的范畴,更贴近传统本地应用程序的功能。此功能的核心,是将
Web 程序所需要的一切文件,包括 html 文件、JavaScript 语言文件、CSS 样式、
图片等缓存在浏览器本地,需要使用时无需联网也可以使用。此功能是由 W3C 规
范的标准功能,完全不同于一些浏览器自带的缓存功能,提供更标准、更有效的
离线功能。
(2) 本地数据存储(LocalStorage)。此功能不同于以前的 Cookies 功能,更像是一个本
地 JavaScript 语言可以使用的超级“Cookies”,此功能允许应用程序在本地存储大
量数据,而无需联网或者是数据库。
(3) 绘图画布(Canvas)。此功能类似包括 2D 和 3D 部分,提供各种基本的画图函数,
可以给予 HTML5 以画图能力,是制作游戏、部分动画的基础。
(4) 原生的视频和音频支持(Video&Audio)。此功能可以提供原生的视频、音频播放
能力,不需要再依赖 Flash 或者 ActiveX 控件。
(5) 智能表单(Forms Inputs)。此功能让浏览器提供本地的表单判断功能,例如时间日
期的选择,Email 地址的验证,简化编程代码。
(6) 后台运行支持(Web Workers)。HTML 的后台语言,也就是 JavaScript 语言是一种
单线程、事件驱动语言。而 Worker 这项新能力可以说给予了 JavaScript 一种全新
的多线程能力(虽然标准并未规定必须多线程实现此功能,不过所有桌面浏览器
都采用了多线程方法)。Workers 可以产生多个 Worker,而每个 Worker 工作在不
同的 JavaScript 程序空间内,不同程序空间不能直接访问,但是可以相互传输消息
(Message)。这项功能在需要运行复杂算法时可以充分运用现代的多核心处理器
14
能力,而冲出了 JavaScript 的单线程限制。
(7) 套接字支持(Websockets)。Web Sockets 套接字提供给了 HTML5 以长连接能力,
以前的 ajax 只是由一次请求和接收组成,没办法保持连接,也就是缺乏了程序的
实时性。而 socket 可以保持连接,每次连接也不用再提供复杂而冗长的 HTTP 报
文,提高程序的网络性能、减少响应时间。
2.1.3 HTML5 与本课题软件的联系
本课题软件之所以使用 HTML5 技术开发,是因为传统的开发方式已经不能满足当前软件
对于跨平台、成本、通用性的要求,而传统的 Web 网站式应用也不能满足当前用户渴望桌面
式应用体验的要求
[4]
。
在企业环境下,HTML5 已经有了一定程度的发展,例如 Gmail 的离线应用、WebOS 和
Firefox OS 的 HTML5 式网络编程、Facebook 的 HTML5 客户端,都已经对 HTML5 开发应用
做了尝试,Web 应用在很多方面逐渐取代传统应用是主流软件开发领域的一个共同认识。故
本课题软件使用 HTML5 开发,在拥有 Web 网站式应用优点的同时,使之尽量接近传统桌面
应用的用户体验,这是其他传统开发平台所不能达到的。
这里之所以说是 HTML5,而不是 HTML4 或以前的版本,因为只有 HTML5 的新技术,
才能达到本软件的开发要求。本课题软件作为 HTML5 开发软件,甚至可以很方便的转变为
其他类型程序,具有极大的灵活性。虽然由 HTML5 开发出来的程序是在线程序,但是可以
极易的扩展为本地应用程序:例如使用免费开源的 GTK、QT 的 Webkit 引擎就可以直接变为
可以跨 Windows、Mac、Linux 的传统桌面程序;还例如使用 Adobe 公司的 PhoneGap 的引擎
就可以直接变为跨 Android、IOS、Windows Phone 系统的手机原生应用。总之 HTML5 赋予
了软件无限的扩展能力。
2.2 Node.js 技术简介
2.2.1 引言
Node.js 并不是一个 JavaScript 应用,而是一个 JavaScript 运行平台,是使用 JavaScript 作
为语言的服务器平台。Node.js 是使用 C++编写的,基于 Google 的 V8 引擎制作的,采用事件
驱动、异步编程、为网络服务而设计
[5]
。
2.2.2 Node.js 的特点
(1) 性能强大。虽然 Node.js 是使用 JavaScript 语言作为服务器且是单进程、单线程模
式运行,但是凭借高效率的循环队列来维护事件列表,没有多线程的资源占用和
不同进程或县城的上下文切换,这意味着在面对大量 HTTP 请求时,Node.js 凭借
事件驱动就足以搞定一切。
(2) 编程语言是 JavaScript。JavaScript 作为传统的前端工程师的主力语言,在社区中有
相当的影响力。正因为 Node.js 选择 JavaScript 作为语言,所以前端工程师也可以
剩余69页未读,继续阅读
yyyyyyhhh222
- 粉丝: 442
- 资源: 6万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功