本文转自http://blog.csdn.net/xuexiaodong2009/article/details/6641603
网上人云亦云的东西就不重复了,没有价值,这里只谈几个对设计程序很关键的几个区别。
1使用的技术不同 2速度不同 3安全性要求不同
1使用的技术不同
B/S前台使用CSS,HTML,JS,C/S就没有这些概念。所以使用CSS,HTML,JS的都是B/S的系统,当然那些在C/S中嵌入浏览器内核的东西不在讨论范围内。
2速度不同
由于C/S在客户端安装有程序,可以直接控制客户端的各种资源,所以对于一些性能要求很高,时效性要求很高的系统应该使用C/S程序,当然你可以把B/S的服务器配置的足够好,但网络的速度却是你不能处理的,尤其是在互联网上,局域网能好些。
3安全性要求不同
B/S由于客户端是浏览器,不是我们可以改变的程序,导致许多对客户端的操作不能执行,而C/S客户端是我们自己可以修改的程序,所以有很大的权限,基本上相当于拥有客户端的所有权限,很多在 B/S中不能处理的东西全部可以处理了。
例如一个很简单的应用:给定一个目录,遍历此目录下边的所有文件,在C/S中很简单,但在 B/S中却相当复杂,不得不借助类似浏览器插件的技术。
再例如;开机后QQ会弹出一个类似网页的窗口,很多人认为这个可以通过 B/S系统实现!!其实它是C/S技术,不信把它的客户端QQ卸载了试试,看看是不是还可以弹出来?
当然通过插件之类的技术可以实现类似的效果,但首先要启动浏览器,毕竟 B/S的客户端是浏览器啊。
如果你真的理解了B/S C/S的区别,你就能明白像QQ弹出新闻的技术不是B/S,而遍历文件,在客户端判断文件大小之类的操作也不是B/S可以简单实现的,而这些决定着系统到底设计成那种系统的根本问题。