zoukankan      html  css  js  c++  java
  • web开发的功能备忘录

    总体设计

    Web项目开发中,我们可以根据不同的功能,将整个系统的功能进行划分。系统功能总体来说可以划分为两个模块:系统的必备功能和逻辑业务功能。   



    下面主要是分析一下系统的必备功能,所谓系统的必备功能是指任何一个web系统具备的一些必要的功能。逻辑业务功能这个需要根据自己项目的实际情况来设计,在这里就不分析逻辑业务功能。   

     

    web系统的一般会分为前台和后台,在前后台的系统功能上有很多相同的,也有差异。  

     

    前台的系统必备功能

    (1) 登陆功能 

    描述:Web系统基本都会有用户的登陆功能,在移动互联网时代,只有绑定注册的用户的黏性,才会获得更大的流量,从而将流量变现。所以登陆功能很重要,特别对于大流量的网站来说,如何实现web的登陆功能也是一个很重要的模块,因为这是用户在这个网站的入口。

      

    设计:根据我自己的开发经验,登陆功能可以利用cookie或者session的技术来实现,对于大流量的网站可以结合Redis的缓存实现,将用户登录之后的信息或者状态存贮在redis中,设置一定的缓存时间。Redis基于分布式的部署,可以更好实现系统不断升级的分布式部署。

     

    拓展:登陆的模式或者方式可以多种,比如用注册的账号登陆,手机号登陆,邮箱登录等。

     

    (2) 注册功能

    描述:注册功能是实现系统绑定用户最重要的模块功能。需要引导用户注册,而且注册的过程不能过于繁琐,这样子用户会很烦,体验很不好。

     

    设计:可以用户输入用户名,密码注册。手机号直接注册。邮箱注册。第三方认证登陆并注册,比如微信,qq,支付宝,微博登认证登陆。

     

    (3) 找回密码

    描述:一个网站登陆时,一般的设计会有注册或者忘记密码(找回密码)的链接功能。用户可以通过之前设置的邮箱重置密码。

     

    (4) 个人设置功能

    描述:个人信息设置功能是用户登录后,对自己的信息进行相关的操作。其实功能也细分很多。

    1)上传头像

    描述:在目前的移动互联网时代,web或者是app都是要越来越有个性化,用户体验越来越好的,甚至引入社交功能。所以设置个人的头像是很有必要的一个功能。

     

    设计:一般设计上传图片的大小,并且带有上传前的预览。图片的保存,我个人觉得将img转为base64的格式存在MySQL数据库或者其他的数据库中会比较好,因为头像的不会很大,在登陆时也方便从数据库中查找出来,容易显示,同时也减少http的请求。

     

    拓展:上传的插件也有很多,可以将图片上传后再转为base64的格式保存,也可以通过HTML5直接在前端将图片转为base64,再post数据给服务器。]

     

    2)修改用户名

    用户应该可以修改自己的用户名,凸显个性。

     

    3)修改密码

    描述:修改密码的功能,对用户来说可以起到安全的作用。

     

    4)绑定邮箱

    描述:用户可以通过绑定的邮箱来找回密码或者接受收邮件。

     

    设计:填写邮箱-〉发送至邮箱-〉用户登录邮箱点击链接激活-〉绑定邮箱成功。

     

    5)登陆访问记录

    描述:访问记录可以记录用户在某一段的时间内的登陆情况,这个可以用户判定网站的活跃度,对于在大数据统计阶段很有帮助。

     

    设计:访问记录的信息简单点可以只包括登陆时间,复杂的话可以包括时间,地点,ip,登陆方式(手机号,邮箱,注册账号),甚至是设备(pc,手机等)。

     

    (5) 退出功能

    描述:用户退出网站时,会将缓存的个人登陆信息全部清除。

     

    (6) 内部代码审核功能

    描述:在执行某一段代码时,对于发生错误时应该要输出错误信息保存在数据库中,可以方便开发人员进行错误的排查,提高效率。

     

    (7) 分享功能

    描述:在很多的互联网产品中,分享功能可以帮助更好地传播产品,增强产品的认知度或者品牌度。

     

    后台的系统必备功能

     

    (1) 登陆功能

    (2) RBAC角色认证

    描述:根据登录用户的角色不同获取不同的权限,用户只能操作自己有权限的模块。

     

    设计:基于RBAC原理设计

    (3) 用户管理功能

    描述:查看用户基本信息,管理用户等

     

    (4) 个人设置功能(同上)

    (5) 统计功能

    描述:根据各种的逻辑业务对各种数据做出分析管理

     

    (6) 系统代码的审核功能

     

    (7) 其他的逻辑业务功能

    (8) 监控功能

    描述:数据库监控,服务器的硬盘,内存的监控,redis缓存的监控,流量的监控等。

     

     

    其实在这里说是系统的功能和逻辑功能的区分,但从更本上说,基本很多的功能都是要与逻辑业务相挂钩的,单纯地区分说,也很难说的明白。

     

     

              

     

     

  • 相关阅读:
    jquery跨域请求jsonp
    php返回json,xml,JSONP等格式的数据
    chrome常用配置
    html body标签的几个属性 禁用鼠标右键,禁用鼠标选中文字等
    jquery form表单序列号
    php实时输出内容能够
    php Xdebug调试
    jsonp的简单例子
    web调试的一些小技巧
    jq动态增加的button标签click回调失效的问题,即动态增加的button标签绑定事件$("button.class").click(function)无效
  • 原文地址:https://www.cnblogs.com/caicaizi/p/6709749.html
Copyright © 2011-2022 走看看