B/S和C/S详解
了解B/S和C/S
前言:。。。。。。“学好长时间编程了,JavaSE学完了,前端也简单学了”。。。。。“那你学这么多,讲讲B/S吧”。。。。。。“B/S?这是个啥玩意?没听过”。。。。。。“靠,牛逼!”。
软件开发两大巨头
B/S和C/S是当今世界的两大主流开发体系。
- 什么是B/S?
B/S结构(Browser/Server)是浏览器服务器这种开发模式,
就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件
- 什么是C/S?
C/S又称Client/Server或客户/服务器模式。需要做客户端服务器端 。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或 SQL Server。客户端需要安装专用的客户端软件。
我想看到B/S和C/S的定义,玩过电脑的朋友应该都明白,通俗点说就是像4399小游戏这样运行在浏览器上的软件就是B/S开发模式,像QQ、吃鸡游戏,英雄联盟等软件需要下载客户端软件,这种软件就是C/S开发模式。这个很好理解,没什么可说的。我觉得这不是啥必备的知识点,不牵扯会不会,我也不知道重要不重要,但作为一个程序员,我觉得这应该是个常识吧,就像上厕所要带纸,谈恋爱要趁早。。。。。。。开个玩笑,意思差不多。
基于B/S模式开发
老师之前跟我们说,我们现在学的都是基于B/S模式开发,刚开始我也一脸懵,后来想明白了,为什么这些年微信小程序那么火,还是有道理的。
下面的这张图是我当初理解B/S和C/S后,理解和总结的,对应于生活去理解,我是个90后,记得小时候偷着去网吧玩,网吧电脑上都是些像“血战上海滩”,“红色警戒”等游戏,那个时期,用的最多的就是局域网,用的最多的都是C/S模式开发的软件,知道后来互联网兴起,刚开始能在网页上玩一些小游戏,后来网页上的小游戏也越来越火,好多人都在玩,再发展到今天,微信小程序也是火的飞起,我一直在想,要是有一天,在网页上开发的游戏体验和在客户端下载的游戏体验一样,那B/S模式会不会替代C/S模式,因为B/S模式操作简单,内存占用少,而C/S模式内存占用大,安装复杂,我觉得要真有这么一天,可能。。。。。。
从B/S引出浏览器页面历史
在这穿插一个故事,都说了我们是基于B/S模式开发,既然是B/S,怎能离的开浏览器呢?知识是死的,看书上的官方语句太枯燥,烦人,反正我是不想看,我喜欢听故事,但是很少有人给我讲故事,唉,所以只能听点再自己编点了,我觉得通过故事学到知识,在轻松的环境中学知识,很爽。
《JavaScript的诞生》
早期的浏览器页面很简单,就是用一些HTML和CSS写的,跟上面的图显示的差不多。里面就一些简单的超链接,没有像现在的浏览器页面那样炫酷的东西。后来有一家公司叫Netscape(网景)公司,这家公司不简单,在公司会议中有人提了一个想法,说能不能在浏览器页面上跟客户端的用户有一些交互,这个想法一被提出来,马上引起了公司员工的热议,各种新鲜的想法一跃而出,比如在点那些超链接的时候出现弹框提示等,在那个绝大多数用户都在使用调制调解器上网的时代,用户填写完一个表单点击提交,需要等待几十秒,完了服务器反馈给你说某个地方填错了。。。。。。在当时如果能在客户端完成一些基本的验证绝对是令人兴奋的。但这仅仅是想法,关键是如何去实现呢?不要急,关键的人物出现了,当时就职于网景公司的布兰登*艾奇是个牛人,他回去了后奇思妙想,创新有时候就是在这种奇思妙想中产生的,他搞了几天就搞出一门编程语言,解决了在浏览器客户端与用户交互的问题,没错,这个脚本语言就是JavaScript。这种语言能在网页上和用户产生互动,让用户体验更佳。这个语言出世后很火,可以说是取得了很大的成功。其实这门语言刚出现的时候叫LiveScript,后来网景公司为了搭上媒体热炒的Java顺风车,临时把LiveScript改为JavaScript,所以从本质上来说JavaScript和Java没什么关系。JavaScript 1.0获得了巨大的成功,网景公司随后在Netscape Navigator 3(网景浏览器)中发布了JavaScript 1.1。之后作为竞争对手的微软在自家的IE3中加入了名为JScript(名称不同是为了避免侵权)的JavaScript实现。而此时市面上意味着有3个不同的JavaScript版本,IE的JScript、网景的JavaScript和ScriptEase中的CEnvi。当时还没有标准规定JavaScript的语法和特性。随着版本不同暴露的问题日益加剧,JavaScript的规范化最终被提上日程。
1997年,以JavaScript1.1为蓝本的建议被提交给了欧洲计算机制造商协会(ECMA,European Computer Manufactures Association)该协会指定39号技术委员会负责将其进行标准化,TC39来此各大公司以及其他关注脚本语言发展的公司的程序员组成,经过数月的努力完成了ECMA-262——定义了一种名为ECMAScript的新脚本语言的标准。第二年,ISO/IEC(国标标准化组织和国际电工委员会)也采用了ECMAScript作为标准(即ISO/IEC-16262)。
故事讲完了,有些是自己虚构的情节,不要考量故事的真实性,没意义,能学到知识就好。
B/S和C/S优缺点比较
B/S
C/S
*****************************************************************************************************
我的博客园地址:https://www.cnblogs.com/zyx110/
本文已独家授权给脚本之家(jb51net)公众号独家发布
作者:泰斗贤若如
微信公众号:去有风的地方飞翔
Github:https://github.com/zyx110
有事微信:zyxt1637039050
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
我不能保证我所说的都是对的,但我能保证每一篇都是用心去写的,我始终认同: “分享的越多,你的价值增值越大”,我们一同在分享中进步,在分享中成长,越努力越幸运。再分享一句话“十年前你是谁,一年前你是谁,甚至昨天你是谁,都不重要。重要的是,今天你是谁,以及明天你将成为谁。”
人生赢在转折处,改变从现在开始!
支持我的朋友们记得点波推荐哦,您的肯定就是我前进的动力。