CS设计模式

概念:CS设计模式,C代表的是Client,S代表的是Server。正如图中的所示,是客户机与服务器之间的交互。这种交互在早期的软件系统中,大多数都是采用这种模式,通过将任务合理分配到Client端和Server端,降低将全部的逻辑处理同时放到其中一个所带来的负担,可以充分利用两端硬件环境的优势。

 

BS设计模式

 

   概念:B是指Browser,就是浏览器,S依然是Server(服务器),前面我们说到CS模式可以分担我们的客户端和服务器两者的分担,那么为什么我们大部分都是使用BS模式的设计模式呢。这就关系到方便性以及技术的更新了,我们都晓得现在我们用浏览器的话,只要你的浏览器能正常上网,输入一个网址就能到达你所需要到的地方,而不用跟CS模式一样,你需要一个客户端,我们就得下载一个客户端,加之技术的更新,软件的优化,现在带给服务器的运算压力已经是一个可观的状态了。

  

上面我们了解完基础的概念之后,我们就来对比一下两者之间有什么差别吧,知晓我们在CS与BS之间怎么去选择哪种设计模式来开发我们的应用

 

 

 

CS模式

BS模式

 

 

硬件环境

C/S一般建立在专用的网络,小范围的网络环境,局域网之间再通过专门的服务器提供连接和数据交换

B/S建立在广域网上,不必是专门的网络硬件环境,例如电话上网,租用设备,包括你现在在看我的博客,一般只需要有操作系统和浏览器就可以了

 

安全要求

C/S面对的是相对固定的用户群体,对于信息安全的控制能力较强,高度机密的信息系统采用C/S模式

B/S建立在广域网上,对安全控制能力较弱,面对的是不可知的用户群。

 

程序的架构不同

C/S程序更注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑

B/S对安全和速度多重考虑,建立在需要优化的角度上,现在的技术更新也在B/S上优化更多

 

 

软件重用不同

C/S程序的重用较差,一般做完了有啥功能就是固定着,只有在一定需要的情况下才需要修改

B/S有多重结构,要求构件相对独立,有较好的重用性。例如你买一辆车,报废了,里面的零件可以再拿到其他的地方复用

系统维护成本

(软件生存周期开销大)

C/S程序由于整体性,必须在做的时候就需要考虑整体的考察,因为如果使用C/S模式开发,需要升级可能是需要再做一个新系统的可能性

B/S的构件相对独立,新增构件,修改构件在软件的升级中能达到无缝升级,将系统的维护开销减到最小

处理的问题不同

C/S可以处理用户面固定,安全要求高需求,与操作系统相关,一般都是相同的操作系统

B/S建立在广域网上,面对不同的用户群体,分散地域,多种操作系统

用户接口不同

C/S多是建立在win平台上,表现能力有限,对程序员的要求比较高

B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流。且大部分的难度降低,减低开发成本

信息流不同

C/S一般是典型的中央集权的机械式处理,交互性相对低

B/S信息流可变化,有更高的交互性

 

一文明白所谓的CS与BS设计模式的更多相关文章

  1. 什么是CS和BS结构,两种结构的区别

    什么是CS和BS结构,两种结构的区别 什么是C/S和B/S结构?         C/S又称Client/Server或客户/服务器模式.服务器通常采用高性能的PC.工作站或小型机,并采用大型数据库系 ...

  2. 1.cs与bs结构

    ####CS 与 BS 结构 C/S 结构软件:客户端(Client)服务器(Server)软件,客户端需要单独下载安装之后,才能正常操作的软件 B/S 结构软件:浏览器(Browser)服务器(Se ...

  3. CS 和 BS 的区别和优缺点

    通俗来讲: bs是浏览器(browser)和服务器(server) cs是静态客户端程序(client)和服务器(server) 区别在于,虽然同样是通过一个程序连接到服务器进行网络通讯,但是bs结构 ...

  4. CS与BS区别

    简介:CS即Client/Server(客户机/服务器)结构,C/S结构在技术上很成熟,它的主要特点是交互性强.具有安全的存取模式.网络通信量低.响应速度快.利于处理大量数据.但是该结构的程序是针对性 ...

  5. 网络应用软件结构-----CS与BS结构(网络基本知识小结)

    1.网络的大致结构 2.网络编程 通过直接或间接地使用网络通讯的协议实现计算机与计算机之间的通讯.在TCP/IP协议层主要麦网络主机的定位,数据传输的路由,由IP地址可以唯一地确定Internet上的 ...

  6. CS 和 BS 的区别和优缺点(转)

    转自:http://www.cnblogs.com/scnuyz/p/5808808.html bs是浏览器(browser)和服务器(server) cs是静态客户端程序(client)和服务器(s ...

  7. java文件导出过程 CS、BS差别

    最近在做一个需求,类似和navicat工具差不多的,通过java代码吧数据库表的数据导出来.jdbc获取数据库连接,查询表数据,分批次用流写入文件txt.csv.json.xls.xlsx,搞定之后, ...

  8. 前端系列-CS与BS的区别

    现在的系统架构有B/S与C/S之分. C/S,即Client/Server(客户端/服务器).我们一般使用的软件架构都是C/S架构,比如各个系统版本中的软件如qq管家.腾讯qq.office等.C/S ...

  9. cs 与 bs 架构

    C/S和B/S各有优势,C/S在图形的表现能力上以及运行的速度上肯定是强于B/S模式的,不过缺点就是他需要运行专门的客户端,而且更重要的是它不能跨平台,用c++在windows下写的程序肯定是不能在l ...

随机推荐

  1. 题解【洛谷P1596】[USACO10OCT]Lake Counting

    题面 \(\text{Flood Fill}\) 模板题. \(\text{Flood Fill}\) 可以快速求出一个图中连通块的个数. 大概就是遍历每一个点,如果它没有被遍历过且是一个新连通块,那 ...

  2. SQLServer 数据库索引碎片

    --改成当前库 use DB_Name --创建变量 指定要查看的表 declare @table_id int set @table_id=object_id('TableName') --执行 d ...

  3. Docker安装部署es集群

    Docker安装部署es集群:环境准备:已安装docker的centos服务器一台1. 拉取es版本docker pull elasticsearch:5.6.82. 新建文件夹 数据挂载目录 和 配 ...

  4. 2019.2.21 T2题解

    meet 大概思路就是 , 找出相交的路径 , 判断方向 , 分类讨论.. 假设已经找出了相交路径 ... 若方向相同 , 则找到相交路径上边权的最大值 , 若最大值>出发时间差 , 则可行. ...

  5. 本地.local域名访问实现

    苹果的 Bonjour 的多址广播域名服务(mDNS) 使用".local "后缀来识别 Bonjour 可访问的设备 比如树莓派可以用用raspberrypi.local去访问非 ...

  6. C++-蓝桥杯-矩阵乘法[快速幂]

    忘了改矩阵的大小居然还有33分,我醉了 #include <cstdio> ; struct Matrix{int a[N][N];}; int n,m; Matrix A,O,I; Ma ...

  7. MySQL的修改和删除数据表字段

    MySQL的修改和删除数据表字段 写在前面: 数据库存在的意义:数据存储和数据管理. 数据库:行(数据),列(字段) 注意:本页是解决了列的字段问题.下一页是解决行的数据问题. 注意,所有的字段名,最 ...

  8. Python-Django学习笔记(三)-Model模型的编写以及Oracle数据库的配置

    Django使用的 MTV 设计模式(Models.Templates.Views) 因此本节将围绕这三部分并按照这个顺序来创建第一个页面 模型层models.py 模型是数据唯一而且准确的信息来源. ...

  9. 常用的H5代码

    1.返回上一页第一次在手机端用到返回上一页的时候,只写了window.history.go(-1):这一句.但是只在安卓手机有效果,兼容苹果手机需要在跳转代码后加上return false:这句.跳转 ...

  10. C++——字符串处理

    11.用字符数组存储和处理字符串 字符数组的声明和引用  字符串: 字符串常量 “china”,没有字符串变量,用字符数组来存放字符串,字符串以‘\0’结束. 字符串数组的初始化: 逐个输出输入字符串 ...