zoukankan      html  css  js  c++  java
  • 社区平台系统开发总结(2017.6.8)

    本文所实现的社区平台系统,是基于模板框架的。首先由rapid-generator生成操作代码,然后在此基础上面添加业务逻辑代码,当然了,前端页面设计是必然要写的,前后端通信的ajax代码也是必须要手动写的。生成器会生成一个数据库单表的增删改成的html页面,一般情况,我们需要稍作修改,才可应用到我们的系统中。社区平台是一个通用的答疑系统,主要针对某一个软件,或者某一个项目,又后者某一个长期的活动,用来进行的成员与管理员之间消息的通知,或者成员对某项内容的疑惑的说明,由管理员或其他成员进行解释(也就是回答该成员所提出的问题)。

    1.1 功能需求分析

    本文决定开发一个社区平台系统,功能类似于一个论坛,社区有一个主题,用户之间可以围绕这个主题,进行讨论,用户如果对某个事情,存在一些疑问,可以在平台中提出来,悬赏一定的金币,其他用户的回答如果被你采纳,那么该悬赏金币将会从你的账号划给被采纳答案的用户。用户角色分为管理员和普通注册用户,以及游客,三种类型。

    功能需求将分为以下几点:

    1、游客对内容的浏览,但不能评论,不能关注其他用户

    2、游客可以注册、登陆,然后成为普通用户

    3、普通用户可以发表问题,可以对已有的问题,提出回答,也可以关注其他用户

    4、普通用户如果有满意的回答,可以进行采纳,悬赏积分自动转移到被采纳答案的用户账户中。

    5、管理员可以整理发布一些,常用的解决方案,对一些比较常见的问题,进行整理归纳,写一篇文章单独描述。

    6、普通用户,可对管理员发布文章提出问题,管理员看到,可进行想应修改

    用例图如图1.1所示:

    图片

    图1.1 用例图

    其中管理员可以进行右边的所有操作,线条画上去比较混乱,就省略了。关于其他的非功能性需求,大家可以参考第二章节,里面有比较详细的介绍。本系统作为一个例子,没有考虑的很周全,一些使用比较多的功能,如果系统里面没有,还请见谅。本文对该系统的一些细节进行了处理,有兴趣的话,可以去我的项目中寻找一下。 

    1.2 业务逻辑设计

       普遍来讲,业务逻辑无非就是数据的增删改查,实际上,增删改查确实是业务的重要部分,但是当涉及到表与表之间的联系,涉及到事务,涉及到多线程安全的时候,涉及到权限认证授权的时候,业务逻辑将会变得相当的复杂,所需要投入的时间也会增加。除了程序本身的业务逻辑,我们的客户提出的需求业务的实现,也可能是复杂的,甚至是不合理的,这时候就要求我们能够识别出不合理的业务,那些是程序可以帮助完成的,而那些事程序不能代替人手工完成的。为了我们的客户方便,我们又该怎样设计我们的产品,产品的质量,决定于客户的满意度,如何给客户一个满意的,符合要求的,容易上手使用的项目产品,是尤为重要的事情。

    1.2.1 系统通用处理流程

    由前端Html页面发起Ajax动作请求,到达服务器,有servlet处理程式调用业务处理模块,进行处理,并输出Json格式的处理结果。

    流程图如图1.2所示:

    图片

    图 1.2 系统通用流程图

    其中的servlet处理程式,将会调用业务逻辑模块,进行业务处理。一般业务处理的流程是:先进行用户登陆认证,在进行授权认证,最后,接受客户端请求参数,进行参数验证,验证通过后,才能进行业务处理,业务处理包含数据库操作,通过调用数据库底层服务模块,进行增删改查。

    1.2.2 页面设计特色展示

    本文实现的社区平台,色调主淡蓝色,灰色辅助,采用浮动Div产生块状的效果,摒弃了传统项目中,使用表格或者列表风格的设计方式。使得看起来更符合当下流行的设计方式。下面给出几张截图,来说明此次开发的前端设计的主要内容,相关代码参见具体项目。

    1、淡蓝色风格首页,如图.所示

    图片

    图1.3首页图展示

    2、弹出窗风格,如图1.4所示

    图片

    图1.4头像上传展示

    3、列表风格,如图1.5

    图片

    图1.5文章管理展示 

    1.3 前后端通信设计

      前后端通信,作为数据通信的重要部分,传输速度的快慢,对用户体验有非常重要的影响。在500k每秒网速的前提下,网页能够在4秒内相应,算是完成了需求。由于采用了Json格式的数据,所以减少了传输的压力。谷歌研发了一个新的数据传输格式,protobuf,能大大减少数据的大小,当传输速度成为瓶颈的时候,可以考虑使用此种技术,该技术是二进制传输,只传输数据,不包含格式。本文采用的还是传统的Json格式进行传输的。
       客户端服务端的通信模型如图1.6所示:

    图片

    图1.6 客户端与服务器的通信模型

        简单的来讲,前端请求url的html页面,经过认证以后服务器返回页面,并于ajax产生数据操作请求,由服务器获取请求,经过层层认证,并处理业务逻辑,产生执行结果,返回给客户端,客户端拿到结果,进行处理并进行相应的页面渲染。 
    ===================>End 
  • 相关阅读:
    海量数据拆分到nosql系统的一种方案
    软件架构师应该知道的97件事
    【转载】实现软件架构质量属性的战术
    让技术人员看得懂的流程
    【转载】一步步构建大型网站架构
    [转载]从100PV到1亿级PV网站架构演变
    添加和删除hadoop集群中的节点
    windows下JDK环境配置
    如何部署hadoop集群
    android9.0适配HTTPS:not permitted by network security policy'
  • 原文地址:https://www.cnblogs.com/qyfh/p/8612852.html
Copyright © 2011-2022 走看看