现有的软件系统从用户交互角度可以分为C/S模式与B/S模式。这两种模式是经典的开发模式也是现在普遍使用的模式,两种模式各有优缺点,但适合的模式便是最好的模式。我们可以从以下几个方面进行对比:
概念
C/S即Client/Server,客户端-服务器模式,这种模式需要专门为用户开发客户端应用,通过客户端与服务器交互获取数据,在客户端处理大部分业务逻辑,服务器压力较小,客户端成为胖客户端。
B/S全称为Browser/Server,即浏览器-服务器模式。Browser指的是Web浏览器,适用前端作为客户端,负责数据的展示,但主要事务逻辑在服务器端实现,减少了客户端的压力,因此被成为瘦客户端。
使用方式
C/S:用户在使用前需要进行下载客户端应用,下载完日后使用较为方便。
B/S:用户不需要下载任何东西,只需借助浏览器即可,有着“即用即找、用完即走”的特点。
应用场景
C/S更多用于一些有着固定需求的应用,即一种应用适用于一个领域范围,对C/S应用的要求较高,响应速度快,界面和操作较为丰富;面向的用户群体固定;可以实现不需联网、离线式的操作,对用户的机器配置有着一定的要求。
B/S常常应用于企业的宣传、门户网站,一种应用模式可以适用于多种领域,B/S模式下的应用响应速度往往与服务器的配置、网速、用户访问量相关,会出现加载失败、数据丢失的情况,对其要求不高,界面和操作简单;面向的群体不固定,较为开放;用户使用时需要联网;对用户的机器配置要求不高,能使用Browser上网即可。
适用类型
C/S模式常常用来开发游戏应用、信息管理系统、基本的操作系统管理软件等。如:计算器、记事本、音乐播放器、文件管理系统等。
B/S模式常常用来开发网站。如:淘宝网、百度搜索、优酷网等。
开发难度
C/S的客户端程序开发难度较大,因为客户端承担着大部分的业务逻辑和操作逻辑,服务器程序开发比较简单,有的甚至不需要开发服务器程序。因为C/S模式应用与平台相关,开发者需要针对不同的平台使用不同的开发语言、开发框架进行开发适用于多种平台的客户端应用。
B/S的服务器端程序开发难度角度,服务器端承担着核心的业务逻辑以及数据的获取,而客户端的开发就相对简单,只需负责对相关数据进行展示即可。B/S模式的客户端开发于平台无关,只需考虑不同浏览器的兼容问题即可。
维护成本
C/S模式的维护成本高,每次的更新需要所有用户更新客户端应用,比较繁琐。
B/S模式的维护成本较低,每次更新后不需用户进行任何操作,当用户再次使用时即为最新的应用。
使用的开发技术
C/S:开发PC客户端使用较多的开发工具为VS,开发语言C#,技术为Windows Form、WPF;同时还有Java Swing开发技术。开发移动客户端使用较多的是Android、iOS开发平台技术。
B/S:由于开、维护成本低,有很多技术用于B/S模式应用的开发,如:Java Web、ASP.NET、PHP等。
小结:其实无论是哪种架构程序,都没有绝对的优劣之分,都是各有所长的,不然它们也就不能共生了。选择开发哪种应用程序,关键在于所使用的环境,在于什么样的软件能更好的为用户服务。