自主学习博客系统的分析与设计【字数:15530】

摘 要本文对vue.js前端框架和django rest framework后端框架之间的配合开发做详细的分析。从项目入手解释不同模块所使用的技术点。对项目中为什么使用Pyton为开发语言,为什么使用单页面开发模式,为什么使用django rest framework框架做出相应的解释。展示项目中实现的各个模块功能。并从最终完成的项目表名单页面项目的优点和不足处。
目录
1.引言 1
1.1网站制作的发展 1
1.1.1静态网页的制作 1
1.1.2动态网页的制作 1
1.1.3前后端分离 1
1.2目的和意义 2
1.2.1目的 2
1.2.2意义 2
1.3课题来源 2
1.4建站思路和采用技术 3
1.4.1建站的思路 3
1.4.2采用的技术 3
1.5遇到的困难以及解决办法 4
1.5.1跨域请求 4
1.5.2富文本编辑器 4
1.5.3前端session的保存 5
2.需求分析 6
2.1功能分析 6
2.1.1前台功能 6
2.1.2后台功能 6
2.2可行性分析 6
2.2.1市场需求 6
2.2.2技术需求 6
2.2.3经济需求 6
2.2.3功能需求 6
2.3用例分析 7
2.3.1业务设计 7
2.3.2功能流程 8
3.数据库设计 10
3.1逻辑设计 10
3.2数据库表设计 10
4.系统实现 13
4.1登录注册模块 13
4.2管理员和普通用户模块 14
4.3编写文章模块 15
4.4文章模块 18
4.5评论模块 20
4.6音乐播放器模块 23
4.7音乐搜索模块 27
4.8中英互译模块 30
4.9视频模块 31
4.10图床模 *好棒文|www.hbsrm.com +Q: ^351916072# 
块 33
5.系统测试 35
5.1任务概述 35
5.1.1目标 35
5.1.2方法 35
5.2测试用例 35
6.影响和效益 41
7.结语 42
参考文献 44
致谢 45 1.引言
1.1网站制作的发展
1.1.1静态网页的制作
静态网页的制作是以HTML、CSS、JavaScript语言和静态文件为最基本组成。HTML5[1]在2004年被WHATWG提出,在2007年被W3C接纳,从此以后市场上主流的浏览器都支持它。HTML5是在HTML的基础上增加了一些新的标签和新的功能取消了一些不实用的标签,主要的目的是为了让移动设备支持。CSS也升级到CSS3,它的出现让网页更加绚丽,功能更加强大。以往网页的图片都会预先使用photoshop处理,但是它的出现使网页的维护成本大大的降低。JavaScript是脚本语言,它最早出现早期HTML网页上,目的是增加动态效果。它的原理是操作DOM使网页产生动态效果。
1.1.2动态网页的制作
动态网页的发展比较迅速。它的基本原理是后端服务器从数据库取数据并且渲染成一个网页。用户从浏览器上请求服务器页面,从而实现动态页面。目前市场上主流的服务器语言有Java、PHP、.Net、Python[2]、Go、Erlang等等。目前大部分市场是Java占据主导地位。主要因为Java诞生的时机很好,它本身是动态语言、可以跨平台、程序体积小、适合在网络上传输这些因素决定了它就是为网络发展而生的。Java发展的非常迅速生态环境也变得非常壮硕从而导致没有一个语言可以取代它所处的位置。Java从一开始的JSP、Sevlet、struts、J2EE到现在主流的SpringMVC再到为服务器架构。在这其中就涉及到了数据库,数据库分为关系型数据库和非关系型数据库(NoSQL)。主流关系型数据库有MySQL、微软的SQL Server、Oracle数据库等等;非关系型数据库有比较火的MongoDB、BigTable、Couch,并且还有键值数据库Redis、Apache Cassandra等。本次项目中我使用了开源免费的MySQL作为我的后台数据库。
1.1.3前后端分离
随着网站开发技术的日益发展,人们追求代码之间的耦合性要低,扩展性要高。后端渲染的页面是好几种语言的大杂烩,前端开发人员设计好了页面,后端人员还要进行拆分添加后端逻辑控制语句。这就使得程序之间的耦合性很高。为了解决这些问题就产生了前后端分离的设计理念。目前主流的前端JS框架有AngularJS、React、Vue.js[3]。在开发的过程中为了方便需要开启JS服务器,目前大多数开发者都是使用Node.js[4]。在本次项目中我也采用了Node.js服务器并且安装webpack打包工具,其主要功能就是将开发过程中的不同类型的文件进行分类打包最终打成一个dict包,然后就可以直接部署到服务器了。并且在node.js中安装了vuecli,它可以帮我快速的创建一个最简单可运行的项目。以上说到的都是一些最基础的配置在接下来的项目介绍中会更详细的说明。
1.2目的和意义
1.2.1目的
我开发这个项目的目的很简单。当今社会网络的发展相当的迅速。人们获取知识的途径大多数是从网络上获取到的。做为软件工程的学员我获取数据的方式同样是从网络上,但是这些信息的呈现以及它背后使用的技术才是我们所要学习的。看过了数以万计的网页,其中个人博客是最吸引我的网站。这些网站的开发人员都是和我一样的程序员,他们是怎么开发出这个网站的。从而我下定决心开发一个属于自己的网站。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/rjgc/527.html

好棒文