微信数据库分析与设计
微信小程序的功能设计与实现

微信小程序的功能设计与实现近年来,微信小程序逐渐成为人们生活和工作中不可或缺的一部分。
随着微信小程序越来越普及,更多的企业和个人开始关注小程序的功能设计与实现。
本文将从功能设计和技术实现两个方面对微信小程序进行分析和探讨。
一、微信小程序的功能设计微信小程序功能设计是小程序开发的重要一环,它直接关系到小程序能否满足用户需求和使用体验。
微信小程序的功能设计需要从多个方面考虑:1. 用户需求用户需求是微信小程序功能设计的核心。
在设计微信小程序之前,需要了解目标用户的需求和使用习惯,根据用户需求来确定小程序的功能和界面设计。
例如,对于一个购物类小程序,用户会希望能够查看商品详情、下单、支付、收货等。
在设计小程序时,需要将这些功能尽可能地组合到一个小程序中,让用户使用更加便捷和快速。
2. 商业需求商业需求是微信小程序功能设计的重要考虑因素。
小程序的设计要考虑到商家利益,通过小程序来提高公司或个人的营销效果。
例如,可以为商家提供线上支付、会员服务、优惠券等功能,以达到增加流量和销售额的目的。
3. 技术实现微信小程序的功能设计需要考虑技术实现方面的问题。
小程序的功能需要基于微信底层技术,如微信支付、地图、语音识别、客服等。
在设计小程序时,需要注意这些技术的应用和稳定性,使小程序更加安全和可靠。
二、微信小程序的技术实现微信小程序的技术实现是微信小程序开发中最重要的一环。
小程序的技术实现需要掌握以下技能:1. 前端开发微信小程序前端开发主要包括HTML、CSS和JavaScript的技术应用。
开发者需要学习小程序的前端开发框架,如微信小程序框架和Vue框架。
通过熟悉基本的前端技术,可以实现小程序的UI和交互设计。
2. 后端开发微信小程序后台开发主要分为两个部分:业务服务和数据接口。
业务服务主要包括用户管理、订单管理、支付管理等,而数据接口主要是通过小程序服务端和微信服务器进行数据交互。
开发者需要掌握基本的后端开发技术,如PHP、MySQL、Node.js等。
基于微信的微商城小程序的设计与实现

基于微信的微商城小程序的设计与实现Development and Implementation of Tourism Information and Light Social Small Program Based onWeChat Public Platform中文摘要当前信息技术的发展及其迅猛,各方面的发展,用户消费升级,传统电商等方面的线上推广遇到了瓶颈。
高额的店铺成本投入以及维护,加上技术和成本的门槛高也是比较高的。
这时选择微信小程序,开发的微信小程序,对于传统商品通用,而且在消费者方面,需能够体验到方便快捷,应用范围更广。
本论文是实现基于微信的微商城小程序,充分利用面向对象的开发思路。
基于微信的微商城小程序旨在实现以下功能模块。
首页模块:其中有轮播图,商品展示及搜索功能。
商品分类模块,将商品实现分类,点击可达对应的分类页面。
购物车模块,实现购物车商品具备一些基本的操作,比如增删操作。
除此之外,还有的就是订单及地址管理模块。
该系统在布局方面利用了移动端最常用的flex布局,该布局方式容易上手,对小程序的兼容也很友善。
采用了小程序的原生框架以及结合了微信小程序提供的云开发技术。
微商城小程序运用小程序云开发技术,业务逻辑都可在小程序端完成,但不够强大的地方就是无法实现强大的Web管理界面。
关键词:微信小程序商城化妆品云开发AbstractThe current development of information technology and its rapid development, the development of all aspects of user consumption upgrade, traditional e-commerce and other aspects of online promotion encountered a bottleneck. High store cost inputs and maintenance, coupled with high technology and cost thresholds are also high. At this time, choose the WeChat app, developed by WeChat app, for traditional goods, and in the consumer side, need to be able to experience the convenience and speed, the application range is wider. This thesis is to implement a WeChat-based WeChat applet, making full use of object-oriented development ideas.The WeChat-based WeChat applet is designed to implement the following functional modules. Home module: with rotating map, product display and search function. The product classification module enables you to classify products and click the corresponding classification page. The shopping cart module, which implements some basic operations for shopping cart products, such as adding and deleting operations. In addition to this, there is the order and address management module.The system makes use of the most common flex layout on the mobile side in terms of layout, which is easy to use and friendly to applet compatibility. The native framework of the applet and the cloud development technology provided by the WeChat applet are used. The micro-mall applet using the applet cloud development technology, business logic can be done in the applet side, but not powerful enough is not able to achieve a powerful web management interface.Key words:Wechat Public Platform tourism Travel information Lightweight Sharing Community目录第一章论绪 (1)1.1 课题背景与研究意义 (1)1.1.1 课题背景 (1)1.1.2 研究意义 (1)1.2研究现状 (1)1.3本课题的研究方法 (2)1.4论文结构 (2)1.5本章小结 (3)第二章系统相关技术研究 (4)2.1开发工具及技术选型 (4)2.2 微信小程序 (4)2.3 相关技术 (4)2.3.1 JavaScript (4)2.3.2 CSS技术 (4)2.3.3 HTML语言 (5)2.3.4 小程序云开发 (5)2.4 本章小结 (5)第三章系统分析 (6)3.1 微商城小程序业务流程分析 (6)3.2 微商城小程序总体功能分析 (7)3.3 微商城小程序详细需求分析 (7)3.3.1 用户登录模块 (7)3.3.2 商品信息展示模块 (8)3.3.3 商品分类模块 (9)3.3.4 购物车模块 (10)3.3.5 下单支付模块 (11)3.3.6 个人中心模块 (12)3.4 本章小结 (13)第四章微商城小程序的设计 (14)4.1 微商城小程序项目的搭建 (14)4.1.1 准备工作 (14)4.1.2 新建项目 (14)4.2 微商城小程序的数据库设计 (15)4.2.1 数据库概念结构设计 (15)4.2.2 数据库的逻辑结构设计 (18)4.3 本章小结 (20)第五章微商城小程序的具体实现 (21)5.1 商品信息展示模块设计与实现 (21)5.1.1 首页轮播图banner (21)5.1.2 首页搜索框 (22)5.1.3 首页热门商品展示 (23)5.2 商品分类模块设计与实现 (25)5.2.1 分类模块 (25)5.2.2 商品详情模块 (26)5.3 购物车模块设计与实现 (26)5.4 下单模块设计与实现 (28)5.5 微商城小程序个人中心管理模块的设计与实现 (29)5.5.1 登录获取用户基本信息 (29)5.5.2 个人地址管理 (30)5.5.3 个人订单管理 (31)5.6 商品管理模块的设计与实现 (32)5.7 本章小结 (32)第六章系统测试 (34)6.1 软件测试的目的和流程 (34)6.1.1权限测试 (35)6.1.2功能测试 (35)6.1.3网络测试 (37)6.2本章小结 (37)总结 (38)参考文献 (39)致谢..................................... 错误!未定义书签。
基于微信小程序的测试设计与分析

中文摘要近几年软件开发都不断往小程序发展,人们日益增长的美好生活需求与对手机APP应用方面的需求不断增长,微信小程序因其开发难度低,所占内存少,开发规模小,开发门槛低,日益成为今日互联网APP软件开发的主流,软件测试方向也渐渐往微信小程序伸展。
本课题主要内容是以微信小程序测试的设计与分析为主,将仿网易严选商城(带后台管理系统)这一小程序进行测试的设计作为实例,进行相应的测试计划以及分析,结合不同的测试工具为辅,设计一份较为完整的,具有针对性的微信小程序测试的方法,并对该测试方法进行实施以及分析。
将测试的计划和方法贯彻于整个测试流程,侧重于对其测试方法作不一样的侧重点安排以及分析,并对此与一般的软件测试方法与测试计划进行比较,关注它的不同点。
关键词:微信小程序测试方法测试计划AbstractSoftware development are constantly to wechat mini programme in recent years,people’s growing demand for better life and a growing demand for mobile phone APPlication,wechat mini programme beause of its low development level,take up less money and development of small scale,low threshold of development has increasingly become the mainstream of today’s Internet APP software development,software testing direction slowly toward wechat mini programmes.This topic mainly content to wechat mini programme testing design and analysis is given priority to,in imitation of wangyiyanxuan mall(with background management system)test design as the instance,this program to write the corresponding test plan and analysis,combined with different test tools is complementary,write a relatively complete targeted for wechat mini programme test oriented analysis method to plan and implement,to carry out in the whole testing process plan and arrangement.Focus on the arrangement and analysis of its test methods and focuses,and compare it with the general software test methods and test plans which focusing on its differences.Key words: wechat mini programme testing method testing plan目录第一章绪论 (4)1.1课题研究背景 (4)1.2课题研究目的与意义 (4)1.3国内外研究现状 (4)1.4本课题研究 (5)1.5本章小结 (5)第二章小程序内部架构与测试环境部署 (5)2.1小程序的内部分解与认识 (5)2.1.1小程序的内部架构研究 (5)2.1.2小程序的内部结构研究 (7)2.2微信小程序测试环境部署 (8)2.2.1获取测试权限 (8)2.2.2构建测试环境 (10)2.3本章小结 (11)第三章基于微信小程序的测试需求分析与测试计划 (11)3.1小程序测试策略 (11)3.1.1测试策略分析 (12)3.1.2微信小程序测试版本分析 (14)3.2小程序测试进度计划 (14)3.3小程序测试方法分析 (17)3.3.1功能测试 (17)3.3.2用户界面测试 (17)3.3.3权限测试 (17)3.3.4兼容性测试 (18)3.3.5性能测试 (18)3.3.6网络测试 (19)3.4本章小结 (19)第四章基于微信小程序的测试设计与分析 (19)4.1测试用例设计与分析 (19)4.1.1功能测试用例分析 (19)4.1.2性能测试用例分析 (21)4.1.3兼容性测试用例分析 (22)4.1.4用户界面测试用例分析 (23)4.1.5权限测试用例分析 (24)4.1.6网络测试用例分析 (25)4.2本章小结 (25)第五章基于微信小程序的测试实施与分析 (25)5.1测试实施 (25)5.1.1功能测试 (26)5.1.2性能测试 (28)5.1.3兼容性测试 (31)5.1.4用户界面测试 (32)5.1.5用户权限测试 (33)5.1.6网络测试 (33)5.2测试结果分析 (34)5.2.1Bug报告结果分析 (34)5.2.2测试缺陷分析 (35)5.3本章小结 (35)第六章总结与展望 (36)6.1总结 (36)6.2后续研究展望 (36)6.3本章小结 (36)参考文献 (36)图表目录图 1小程序框架图 (6)图 2基本的小程序内部结构 (7)图 3框架程序的主体部分 (8)图 4框架页面的组成文件 (8)图 5登陆微信公众平台 (9)图 6微信公众平台用户身份授权 (9)图 7 添加开发者权限 (10)图 8下载微信开发者工具 (10)图 9导入前台代码 (11)图 10导入后台代码 (11)图 11 小程序关键测试点 (12)图 12性能测试参数值位置 (14)图 13首页功能测试用例 (19)图 14购物车功能测试用例 (20)图 15分类功能测试用例 (20)图 16导航栏页面功能测试 (21)图 17测试用例 (21)图 18兼容性测试用例 (22)图 19用户界面测试用例 (23)图 20权限测试用例 (24)图 21网络测试用例 (25)图 22进入调试和设置显示性能窗口 (29)图 23性能窗口直接调出 (29)图 24添加小程序的测试事务 (30)图 25根据链接连接小程序 (30)图 26设置基本的并发用户和压力测试持续的时间 (30)图 27启动测试任务,选择所需要的资源 (31)图 28基本的性能指标 (31)图 29资源使用变化 (31)图 30响应的时延数据报告 (31)图 31测试报告分析 (34)图 32 小程序和APP的不同点 (35)表 1总体测试进度安排 (14)表 2功能测试进度安排 (15)表 3用户界面测试工作进度安排 (15)表 4权限测试工作进度安排 (15)表 5 兼容性测试进度安排 (16)表 6性能测试工作进度安排 (16)表 7网络测试进度安排 (16)表 8功能测试计划 (17)表 9用户界面测试计划 (17)表 10权限测试计划 (17)表 11兼容性测试计划 (18)表 12性能测试计划 (18)表 13网络测试计划 (19)表 14 首页功能测试结果 (26)表 15领红包功能测试结果 (26)表 16分类功能测试结果 (26)表 17购物车功能测试结果 (27)表 18个人功能测试结果 (27)表 19搜索功能测试结果 (28)表 20兼容性测试结果 (31)表 21界面测试结果 (32)表 22用户权限测试结果 (33)表 23网络测试结果 (33)表 24 Bug报告 (34)第一章绪论1.1课题研究背景近几年软件开发都不断往小程序发展,如今也成为了各大平台战略布局的竞争手段。
微信公众号产品设计思路与实践经验分享

微信公众号产品设计思路与实践经验分享在当前的互联网时代,微信公众号已成为了企业、机构以及个人展示自身的重要平台。
作为一种流行的社交工具,微信公众号其产品设计被广泛关注。
而优秀的微信公众号产品设计不仅能够符合用户期望,更能够给用户带来良好的使用体验。
一、用户研究的重要性在微信公众号产品设计之初,必须首先进行用户研究。
通过深入的用户调研和统计数据分析,在深入了解目标用户的需求和使用行为的基础上,可以确定产品的设计方向以及优化策略。
在进行用户研究时,可以采用多种方法,如问卷调查、访谈、用户体验测试等,从而对用户进行综合联合研究。
例如,对于一家企业而言,通过统计数据分析可以了解用户使用的浏览器类型、所在地区、年龄段等情况,这将有助于企业决策、产品设计和推广策略等方面进行调整。
二、灵活的页面布局设计在微信公众号产品的设计中,页面的布局设计至关重要。
可以灵活地利用各种设计元素,如颜色、字体、图像等来达到最佳的视觉效果。
为了打破页面的单调性和提升视觉效果,可以采用拟真手感效果,添加简单精致的设计元素。
此外,整个页面的布局设计也必须合理,深入分析各个栏目之间的关系,使用户对信息的获取更具有良好的体验感。
三、简化信息操作体验在微信公众号产品的设计中,信息操作体验的简便程度对用户至关重要。
设计者应该尽可能地使用图像来代替文字,方便用户的理解和使用。
此外,为了方便用户的体验,可以采用与微信的界面一致的设计风格,使用户更快速地适应页面操作。
例如,底部菜单尽可能的保持,增加顶部菜单坐标导航箭头等等。
通过优化微信公众号操作体验,促进用户和微信公众号的互动意愿和积极性。
四、信息更新必须及时微信公众号是展示信息的平台,因此信息更新的及时性对于用户非常重要。
在设计时,需要注意信息更新的周期并及时发布更新内容,保证页面信息的新鲜性和实用性。
同时还需要根据网站的分类、内容本身的增加来提供更多的网站信息以及更加精细化的推荐服务。
简而言之,及时更新的信息对于微信公众号的用户非常重要。
基于微信的校园信息服务系统设计研究

基于微信的校园信息服务系统设计研究一、研究背景和意义随着科技的飞速发展,互联网已经深入到我们生活的方方面面,为我们提供了便捷的信息获取途径。
微信作为一款广泛使用的社交软件,其平台已经不仅仅是一个简单的通讯工具,更是一个集生活、工作、娱乐于一体的综合性服务平台。
在这个背景下,基于微信的校园信息服务系统应运而生,它将为校园生活带来极大的便利。
首先基于微信的校园信息服务系统可以提高信息的传递效率,传统的校园信息服务方式往往需要通过邮件、公告栏等方式进行发布,信息传递速度较慢,而且容易被忽略。
而基于微信的校园信息服务系统可以实现即时推送,让信息第一时间传达给用户,大大提高了信息的传递效率。
其次基于微信的校园信息服务系统可以丰富信息的形式,传统的校园信息服务方式受限于载体,形式较为单一。
而基于微信的校园信息服务系统可以实现图文并茂、音视频等多种形式的信息传播,让用户在接收信息的同时,也能获得更加丰富的视觉和听觉体验。
此外基于微信的校园信息服务系统还可以实现个性化服务,通过对用户的兴趣爱好、行为习惯等数据进行分析,系统可以为用户推送更加符合其需求的信息,让用户在使用过程中感受到更加贴心的服务。
基于微信的校园信息服务系统有助于提高学校的管理水平,通过系统学校可以实时了解学生的动态,及时解决学生在学习、生活中遇到的问题,提高学校的管理效率和服务质量。
基于微信的校园信息服务系统具有很大的研究价值和实际应用意义。
它将为我们的生活带来诸多便利,同时也有助于推动学校管理的现代化进程。
A. 研究背景随着科技的飞速发展,人们的生活节奏越来越快,信息传递的方式也在不断地改变。
在这个信息化时代,微信作为一款普及率极高的社交软件,已经成为了人们日常生活中不可或缺的一部分。
尤其是在校园这个特殊的领域,微信作为一种便捷、高效的沟通工具,为学生们提供了一个全新的信息交流平台。
因此基于微信的校园信息服务系统设计研究具有重要的现实意义。
在传统的校园信息服务系统中,学生和老师之间的信息交流往往是通过邮件、电话等方式进行的,这些方式存在着效率低、易丢失、不易查找等问题。
2024微服务接口架构设计

2
实现合理的身份、访问管理框架
云架构可以不再依赖网络层访问控制,云访问控制框架应管理不同角色的整个访问过程,包括用户。
3
实现安全管理API
所有的安全服务都应被打包成API(REST/SOAP)形式部署,以支持自动化开通和编排。API有助于在应用部署时实现自动化的防火墙策略、配置加固、访问控制。
面临的问题目前在客户管理、服务和产品创新等方面无法满足业务要求无法适应新形势下移动化、智能化、个性化要求业务响应慢,现有系统问题无法快速调整新应用实施难、上线慢等等
业务挑战保险客户对全生命周期的用户体验、个性化服务等各方面要求越来越高市场竞争日趋激烈,在同质化竞争的大背景下,保险公司的业务创新能力至关重要,对灵活快速的险种产品创新、服务创新、渠道创新等提出更高要求日趋成熟的新技术对保险业务发展来说既是机会也是挑战,要求保险公司能充分利用移动互联网、云计算、大数据等技术,更好的满足客户保险服务要求对内要满足精细化管理要求,对外也要满足日趋严格的监管要求等等
微服务带来的管理提升之四:开发部署能力
22
Dev
开发支持
开发者门户
PaaS提供的开发者自助服务门户
集成IDE
符合开发者习惯的IDE环境
敏捷工具
协同的敏捷开发工具,包括协同、计划、任务、缺陷、文档等
开发框架
主流语言
Java、.net
微信支付安全性分析与设计

微信支付安全性分析与设计学号:********姓名:***移动支付概况:2014年,第三方移动支付市场交易规模达到59924.7亿元,较2013年增长391.3%,继续呈现出较高的增长状态。
而2013年,第三方移动支付的增长率达到了707.0%。
移动支付已经连续两年保持超高增长。
预计2015年开始,移动支付的增速将放缓,2018年移动支付的交易规模有望超过18万亿。
2014年中国第三方移动支付的市场集中度更加明显,支付宝、财付通两家企业占据了93.4%的市场份额,其中支付宝的市场份额为82.8%,财付通的市场份额为10.6%。
在移动支付时代,不同于传统的第三方互联网支付的是,同时拥有庞大用户群和应用场景的互联网企业掌握了绝对的市场份额优势。
从网购支付通道慢慢成长起来的支付宝,在支付用户量级、黏性和场景铺设的速度和力度等方面都保持遥遥领先。
财付通凭借微信支付腾飞,在用户和支付场景方面有了质的飞跃,前景值得期待。
微信支付简介:微信支付是集成在微信客户端的支付功能,用户可以通过手机完成快速的支付流程。
微信支付以绑定银行卡的快捷支付为基础,向用户提供安全、快捷、高效的支付服务。
2014年9月26日,腾讯公司发布的腾讯手机管家5.1版本为微信支付打造了“手机管家软件锁”,在安全入口上独创了“微信支付加密”功能,大大提高微信支付的安全性。
用户只需在微信中关联一张银行卡,并完成身份认证,即可将装有微信app的智能手机变成一个全能钱包,之后即可购买合作商户的商品及服务,用户在支付时只需在自己的智能手机上输入密码,无需任何刷卡步骤即可完成支付,整个过程简便流畅。
目前微信支付已实现刷卡支付、扫码支付、公众号支付、APP支付,并提供企业红包、代金券、立减优惠等营销新工具,满足用户及商户的不同支付场景。
[2]微信支付支持以下银行发卡的贷记卡:深圳发展银行、宁波银行。
此外,微信支付还支持以下银行的借记卡及信用卡:招商银行、建设银行、光大银行、中信银行、农业银行、广发银行、平安银行、兴业银行、民生银行。
基于微信公众号的通用授权中心的设计与实现

基于微信公众号的通用授权中心的设计与实现【摘要】本文主要研究了基于微信公众号的通用授权中心的设计与实现。
在介绍了研究背景和研究目的。
在详细讨论了基于微信公众号的通用授权中心的设计、授权流程设计、安全性考量、功能实现以及性能优化。
通过对这些方面的研究和实践,为搭建一个高效、安全的授权中心提供了参考和指导。
在对全文进行总结,并展望未来的发展方向。
通过本文的研究,可以为基于微信公众号的通用授权中心的设计和实现提供有益的参考和借鉴。
【关键词】微信公众号、通用授权中心、设计、实现、授权流程、安全性、功能、性能优化、总结、展望未来1. 引言1.1 研究背景在当今互联网时代,随着移动互联网的快速发展,越来越多的应用程序和服务需要用户登录并获取权限来访问用户的信息。
用户在不同的应用中重复进行登录和授权操作,不仅繁琐,而且存在安全风险。
为解决这一问题,我们提出基于微信公众号的通用授权中心的设计与实现。
随着微信公众号用户量的不断增加,微信具有了成为通用授权中心的潜力。
用户在微信中已经拥有了一个稳定的登录账号,并且可以通过微信授权登录第三方应用,实现一次登录多个应用的目的。
基于微信公众号的通用授权中心借助微信的用户体系,可以让用户在微信中完成一次授权,然后通过令牌的方式访问其他第三方应用,极大地简化了用户的登录和授权流程。
通过研发基于微信公众号的通用授权中心,我们旨在提高用户的登录授权体验,减少用户的操作复杂性和安全风险。
基于微信的通用授权中心还可以帮助第三方应用提高用户留存率和活跃度,提升用户体验和服务质量。
1.2 研究目的本研究的目的是设计和实现一个基于微信公众号的通用授权中心,解决当前移动应用和网站在用户授权验证过程中存在的诸多问题,如用户信息安全性、授权流程复杂性和性能瓶颈等。
通过搭建这样一个通用授权中心,可以实现统一的用户认证与授权管理,提高用户体验和安全性,降低开发者的开发难度和成本。
具体目标包括:1. 实现基于微信公众号的统一认证和授权流程,简化用户登录和注册流程;2.加强用户信息安全保护机制,保障用户隐私数据不被泄露;3. 提供稳定高效的性能优化方案,确保系统运行稳定且响应速度快;4. 打造一个通用的可扩展的授权中心,为不同类型的应用提供统一的鉴权服务。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微信数据库分析与设计
一、需求分析
微信作为当前的主要即时通讯工具之一,有着广泛的应用。
其主要的功能是实现即时通信,这也是微信的核心功能。
此外还有查看朋友圈动态、搜索好友、管理个人信息、建立用户自己的相册、收藏功能、摇一摇、搜索附近的人、购物、游戏等功能。
此次对于微信平台的数据库设计主要对部分需要微信平台提供存储信息功能进行需求分析及设计。
以下将对微信平台的主要需求做简要的分析并且根据分析做出数据流图使得对于微信平台数据库的设计有更好的理解。
微信的通信主要包括与微信好友进行相互通信,这其中通信内容包括文字、语音、图片及视频。
当用户订阅了公众号之后,会接收公众号发送的消息并且也可向公众号发信息或许其提供的信息。
微信通信功能的另一个主要方面是实现群聊。
用户可以加入一个微信群进行群。
另一方面用户也可以选择自己的联系人进行群聊。
微信中通讯录实现了保存用户联系人的目的,并且订阅的公众号也保存于通讯录中,并且在通讯录中可以设定标签来为联系人分组。
微信朋友圈保存好友发送的与朋友共享的消息,其内容可为文字、图片、视频。
在朋友圈中可以设定权限使得不同权限的用户查看的内容不一样。
摇一摇功能可以获取同一时刻一起摇动手机的用户,并且暂存于微信中。
附近的人功能可以识别在一定范围内的微信用户,并且将获得的用户信息也暂存在微信中,对于识别附近的用户可以设定具体的条件来扫描。
漂流瓶功能相当于随机的获取微信消息或者向微信用户随机的发送消息。
对于个人信息的编辑,用户可以根据自身需要编辑一些所需的个人信息。
最后在微信用户个人信息中有相册和收藏记录用户的照片和收藏的文字语音等信息。
以上是对微信的部分功能的需求分析,现根据以上需求对微信数据库画出数据流图:
第0层DFD:
第1层DFD:
二、概念设计
在第一步的需求分析中,我们了解了微信数据库平台设计中所需要的实体及需要存储的信息。
在概念设计中将进一步明确数据库设计所需实体,实体所具有的属性及实体之间的关系。
通过分析微信数据库平台所需实体主要有:用户信息、普通消息记录、公众号信息、公众号消息记录、微信群信息、群聊消息记录、收藏信息、相册、朋友圈信息、联系人信息、附近人信息、漂流瓶信息、扫一扫信息、摇一摇信息。
这些实体分别对应于微信功能的不同模块。
在实现微信的通信功能主要是使用用户信息、普通消息记录、微信群信息、群聊消息记录和联系人信息这几个实体。
在明确所需实体后根据实际需要对于每个实体设置符合实际情况的属性,每个属性对应了数据库中的具体属性。
下图是根据对于微信数据库平台的需求分析做出的CDM,通过此概念模型显示数据库之间各实体之间的相互关系及各个实体所具有的实际属性。
三、逻辑设计
由以上概念设计模型,我们可以获得以下逻辑数据模型(LDM)。
在LDM中对于CDM进行了进一步的细化和具体化,对其中的实体之间的关系在逻辑上进一步的进行了明确。
在此基础上我们获得更加具体能直接反映数据库涉及的无理数据模型
(PDM)。
通过PDM将具体显示数据库所需的表及其之间的关系。
PDM如下图所示:
本系统中使用的表单如下所示:
3、联系人表
扫一扫信息
char(20) 20 X X
ID
用户ID char(15) 15 X
时间timestamp
内容varchar(5000) 5,000 X
Name Data Type Length P F M
漂流瓶ID char(20) 20 X X
用户ID char(15) 15 X
内容varchar(5000) 5,000 X
对于微信数据库平台的逻辑分析,明确了在具体是实现时所需的表及其各个表之间的引用关系,在接下来的物理设计中将使用逻辑设计中的表在具体数据库实现微信数据库平台的设计。
四、物理设计
在此次物理实现微信数据库平台使用SQL Server 2008。
实现简单的微信平台的数据库,通过在数据库表中插入数据或查看数据来表现微信平台对信息的发送接收及查看。
在此次物理实现是我们遵循3NF。
数据库设计如下图:
1、向“用户信息”表添加记录,模拟微信在线用户。
此次添加三个用户作为模拟的微信用户。
用户基本信息如下:
2、我们选取“小a”登陆微信,开始添加联系人。
“联系人”表保存每个用户的联系人信息,这些联系人信息皆来自用户信息表。
“小a”的联系人如下表:
此表的创建过程如下:
3、普通用户发送消息时,消息内容将存储在“普通消息记录”表中,如现在“小a”向“小b”发送一条消息,然后“小b”再回复一条。
“小a”也向“小c”发送一条消息。
其中表中的外键约束和默认值如下:
在”普通消息记录表”中也可以查询两个用户之间的聊天记录,如查询“小a”和”小b“之间的聊天记录:
同样也可以在“普通消消息记录表”中实现删除消息记录。
在“普通消息记录”表中为了能使用户更快的查询自己的消息记录,这里创建了索引。
4、“微信群信息”表中记录了所有用户创建的微信群的信息。
由于在微信中群成员数量当前限制为40个,在本平台中我们设置为4个。
并且每一个成员信息由外键引用自“用户信息”表。
比如现在创建了两个个微信群如下:
外键约束和非空约束如下:
由于当用户创建了一个微信群后要在“用户所在群”表中显示出每个用户所在的群,因此需创建一个触发器。
在此创建的trigger为“用户信息新增”。
代码如下:
5、“用户所在群”表存储了每个用户所在的群信。
每个用户可根据此表查询所
在群信息。
当一个微信群被创建后在“用户所在群”表中将自动显示用户所在群信息。
6、“群聊消息记录表”记录了每个群的消息。
也可以查询历史记录。
比如在群“羽毛球部落”中的消息记录。
为了使得用户在查询群历史消息时更加快速,创建索引。
7、“公众号信息”表记录了所有公众号的信息。
可以通过搜索公共号ID或名称来订阅公众号。
8、“关注”表中,存储了每个用户订阅的公众号。
9、“公众号消息记录”存储公众号为订阅者发送的消息。
10、其余各表分别存储每个用户在微信中的信息,通过外键引用来确定每个表中各个用户的信息,其具体结构如下:
以上即为微信数据库平台的简单的物理设计,在具体物理设计实现时根据具体需要对数据路平台的逻辑设计进行了部分修改,也更加具体化了数据库功能。
本数据库只是简单的对微信平台数据库的实现,其中还存在许多不足和缺陷需进一步完善。
最后,通过此次数据库的设计实现进一步熟悉了数据库相关的知识及数据库的设计和实现。
盛年不重来,一日难再晨。
及时宜自勉,岁月不待人。
盛年不重来,一日难再晨。
及时宜自勉,岁月不待人。