图2-1: 微信公共号工作原理
自己服务器需要处理的就是HTTP的请求,对XML格式的数据进行解析,处理完毕后,按照特定的XML格式返回。然后微信服务器接到返回后转发给用户终端,这样用户就得到响应消息。举个例子,你关注中国移动微信公众号,它会发给你一个业务表,你根据表输入相应的数字,微信服务器就会把数字转发给中国移动服务器,中国移动解析传过来的数字,并返回相应的业务,微信服务器转发给用户终端,用户就收到关于该数字对应的业务。
2。2。2 Dreamweaver介绍
Dreamweaver是一款网页编辑器。不同于其他网页编辑软件,使用Dreamweaver编辑网页的同时你可以随时查看实时视图,这样你就可以不断修改,达到你想要的效果。你还可以直接改动实时视图界面而不需要改代码,并且这样做,更简单,效果更好。Dreamweaver的特点主要包括:简易的文本输入、一步到位的对象修改、增加多媒体内容[10]。在CS6的版本中,加入一个重要的功能:对CSS/HTML5的支持。这样,就可以编辑HTML5网页,实时视图的效果就和在支持HTML5的浏览器上显示的效果一样,这样就不需要重复的在浏览器上测试,直接用Dreamweaver就能测试。它不仅支持HTML,还支持对JavaScript、PHP、XML等语言的编辑。
2。2。3 新浪云(SAE)介绍
新浪云(SAE)是由新浪公司开发云计算平台[11]。新浪云可以作为自己应用或网站的服务器。相比较其他服务器而言,新浪云成本低,安全可靠,基本上不会发生故障。而且,它还有数据恢复的功能,即使发生故障,导致数据丢失,也能恢复。除此之外,通过网络访问,就能管理新浪云。对于个人开发者而言,考虑到经济成本和运营成本,新浪云是个不错的选择。
本课题出于成本的考虑,选择把工程部署在新浪云上。它带有代码管理和数据库管理的功能,可以直接在上面修改代码和数据。
2。2。4 MySQL数据库介绍
MySQL数据库最初被人们认为是一个小型数据库,用途局限性很大。但是事实上MySQL用途广泛,它就有跨平台性,适用于绝大数的系统。因为它的跨平台性、开源性、规模较小的缘故,它经常被中小网站作为数据库管理软件。随着大数据和云计算的发展,MySQL有了更大的发展空间。
MySQL的SQL语句是数据库最常用的标准化语句[12]。它支持多线程并且提供多种连接方式。MySQL分为社区版和商业版。商业版是收费的,而社区版是免费的。由于社区版免费并且性能优越,个人开发者或较小的开发团体经常用它和PHP技术和Apache服务器搭配使用,开发网站。
2。3 运行环境
根据微信软件的硬件需求,本课题的运行环境如下:
2。3。1 服务端
本课题的服务端是部署在新浪云。硬件需求由新浪云满足。
2。3。2 客户端
客户端部署在手机的微信中,由微信的硬件需求决定。
(1)处理器:800MHzh或更快的处理器
(2)内存:不少于512MB的内存
(3)存储空间:不低于100MB的存储空间
(4)系统:Android2。3及以上版本、iOS6及以上版本、Windows Phone8及以上版本。
2。4 本章小结
本章综合概述所使用到各项技术和开发工具的优缺点,平衡各项技术结合的效果,确认选择相关技术和开发工具。分析项目开发过程中的软件和硬件需求。完成项目开发的准备工作。
第三章需求分析与框架设计
开发一个好的应用程序或网站,少不了需求分析。了解需求的方式有许多种。本课题采用线上调查问卷和查阅有关网站的方式来了解需求。本章主要介绍网络课程需求的结果与分析,并根据需求设计了网站的总体框架,以及框架所需要的模块。