内容简介
1、Web探索之旅:开宗明义
2、第一部分第一课:什么是Web?
3、第一部分第二课:Web,服务和云
4、第一部分第三课:Web的诞生史
Web探索之旅:开宗明义
大家好。
我们这个系列课程相对比较简单,比【C语言探索之旅】,【C++探索之旅】,【Linux探索之旅】,【TCP/IP网络探索之旅】简单,会让大家在轻松中理解关于Web的方方面面。
您是否对Web感兴趣但是不知道什么是Web呢?
您是否觉得“网络黑客”很神秘?
您是否不清楚Internet和Web有什么区别?
如果您有凡此种种问题,这个系列文章就是为您写的。不需要任何预备知识,只需要跟着小编进行探索Web的旅程。
你可以学习到Web的历史,Web的相关编程语言和框架,Web程序员是干什么的,等等。学完这个系列课程,你就了解了Web开发的世界,而且你自己也可以成为一名Web程序员,如果你愿意的话。
好了,话休絮烦,我们出发吧!
第一部分第一课:什么是Web?
什么是Web呢?这个问题不容易回答。
Web这个英语单词有好几个意思:[蜘蛛网,网状物; [机]万维网; 织物; 圈套]。
我们也经常用到它的合成词,例如Webpage(网页。是Web和page(页面)的合成),Website(网站。是Web和site(站点)的合成)。
一般在IT(信息技术,Information Technology)领域,Web被翻译成“网络”。或者很多时候我们不翻译,就直接用Web这个词。因为network(或简称net)这个单词也有网络的意思。但是Web和Network是有区别的。
那么到底什么是Web呢?
Web是World Wide Web (万维网,一般简写为WWW)的简称。World是“世界”的意思,Wide是“广阔的”的意思,Web就是“网”。
WWW可以让Web客户端(常用浏览器)访问Web服务器上的页面。 是一个由许多互相链接的超文本组成的系统,通过互联网访问。在这个系统中,每个有用的事物,称为一样“资源”;并且由一个“统一资源标识符”(URI)标识;这些资源通过超文本传输协议(Hypertext Transfer Protocol,简称HTTP)传送给用户,而后者通过点击链接来获得资源。
Web是比较偏应用层的概念(【TCP/IP网络精讲】中所讲的OSI七层模型的第七层:Application(应用)层)。可以说network是我们最宽泛的“网络”概念的底层基础,而Web则是指顶层的应用,甚至包含了人与人利用Web进行的交互。
小编的系列教程【TCP/IP网络精讲】着重讲的是OSI的前四层:物理层,数据链路层,网络层,传输层。而这个【Web探索之旅】则是偏重应用层的知识。两个教程可以互为补充,帮助你打通网络的整体概念。
Web的表现形式
用什么来形容Web比较好呢?
有的人可能会想到surfing(冲浪),或者说Surfing the Internet/Web(互联网/网际冲浪)。因为我们在网站上浏览网页时就有点像冲浪一般“一页页”地翻过(想起了腾格尔演唱的康熙王朝的片尾曲《大男人》:“一生有一种大海的气魄,岁月一页页无情翻过”)。我们也经常“无情”地快速翻过我们的网页,甚至我们的人生。
但是说到Web,我们还是用另一个意象来表示吧。
小编选择用“蜘蛛网”,来形象地表现Web:
为什么用蜘蛛网(希望对蜘蛛恐惧的朋友见谅)来形象地表示呢?
因为Web在英语中有“蜘蛛网”的意思,而且蜘蛛网的每个连接的结点,正好可以表示全球这个大Web中的每一台电脑。只要上了网,这些电脑都在Web上互联。
所以surfing the Web可以形象地用以下漫画来描述:
Web,服务和云
这一节中,我们首先要来区分一下Internet和Web这两个时常容易被混淆的概念。
我们要对大家说:Internet 不等于 Web !
Web是Internet的一部分,虽然Web是Internet中最被人熟知的那一部分服务。
如上图所见,我们可以看到,Internet是由Web和其他服务(英语:Service)所组成。
Internet是什么呢?
Internet是互联网,又称网际网路,或音译因特网、英特网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。这种将计算机网络互相联接在一起的方法可称作“网络互联”,在这基础上发展出覆盖全世界的全球性互联网络称互联网,即是互相连接一起的网络结构。
除了Web,Internet还包含其他服务:
这些服务有E-mail(电子邮件),FTP(File Transfer Protocol(文件传输协议)的英文简称),Newsgroups(新闻组这个名字本身多少会产生一点歧义,因为它通常是一个讨论组。新闻组与万维网上的论坛(BBS)在技术上完全不同,但功能上却是比较相似的。新闻组通常使用NNTP协议,使用特定的客户端来阅读和发送讨论的内容是一个电子讨论组,它集中了对某一主题有共同兴趣的人发表的文章。),其他服务还有 远程登录(Telnet),手机 (3GHZ)等。
今天,人们有时候比较容易混淆Internet和Web的概念,是因为现在越来越多的Internet的服务(e-mail,FTP,newsgroups等)都通过Web这个接口来呈现给用户,这些服务中的很多都已经整合到Web中。
举一些例子:
- Gmail:Google的免费网络邮件服务,就是通过Web来与用户交互的。我们一般使用gmail也是在浏览器里面。其实就是e-mail这个Internet的服务通过Web呈现出来。
- Dropbox:国外最流行的网络存储服务,是同步类网盘的祖师。后来国内也出了百度云盘,360网盘这样众多的网盘,都是模仿Dropbox。其实就是FTP这个Internet的服务通过Web呈现出来。
其他还有,就不一一列举了。
Cloud(云)
说了Internet和Web之间的区别,也介绍了一些常见的Internet服务。我们再来看一个近几年很流行的概念:Cloud(英语“云”的意思),相信大家或多或少听说过“云计算”,“大数据”之类名词。
说到Cloud(云)的定义,至今没有太统一的说法。各方解释都不太一样。
如果一定要给一个定义,我希望是一万年(不好意思跑题了)。
我们可以简单地把Cloud定义为:通过Web这个“接口”获取到一些Internet服务,或者把这些服务本身定义为“云”。
可以用下图来形象地表示:
上图中,用云朵来表示的那些各式各样的Service(服务),就是我们用户要通过Web这个接口来获取到的。这些服务有:
- 文件存储:File Storage,比如百度云盘,云存储等。
- 计算能力:比如云计算(Cloud computing)。
- 无纸化:Paperless,是一个资讯革命,形式是避免使用纸张作为记录及沟通的媒体,节约资源,可持续发展。人际沟通无纸化: 以电邮、短讯、上网讨论区等,代替写情信、家书、投诉信等;公文: 用Word、PDF等电脑化,网络传递,交到收信者处,待有必要才由读者自费打印,等。
Web的诞生史
下面我们来聊聊Web的历史吧,看看这么有意思的Web是如何诞生及发展的。
我们简单来介绍一下:
- ARPAnet:被称为Internet的雏形。1969年,美国国防部高级研究计划局(Advance Research Projects Agency, 简称ARPA)开始建立一个命名为ARPAnet的网络。当时建立这个网络的目的是出于军事需要,计划建立一个计算机网络,当网络中的一部分被破坏时,其余网络部分会很快建立起新的联系。那时还想到了防核弹袭击,不要忘了当时正是冷战(1947年至1991)时期。美国需要防卫苏联的突然袭击,比如说纽约的那部分网络被轰炸了,那么这个计算机网络的其余部分还需要能工作。
上图为美国当时全国范围的ARPAnet。
- E-mail等Internet的服务开始出现:1972年,e-mail服务出现。
- Web出现:1991年。所以Web诞生是在Internet之后很久。
Web之父Tim Bern
那么谁发明了Web呢?
Tim Berbers Lee (蒂姆·伯纳斯·李),就是下面这位仁兄。看着还蛮和蔼的。他在1991年(也有说是1989年的...)提出了Web(World Wide Web的缩写,或WWW)。
这张照片其实摄于1994年的欧洲核子研究组织(CERN)。
在他之前,没有浏览器,没有“WWW”,网络世界一片空白。如果当初为谋取个人利益,将自己的WWW设想乃至后来的万维网申请知识产权和专利,如今的互联网世界将不可想象。蒂姆假想说:“那样的话,世界上至少会有16种不同的Web,有CERN网,有微软网,有苹果网……。”
1994年,Tim Berners Lee创立了著名的W3C(World Wide Web Consortium,万维网联盟)组织,因为他觉得Web发展迅猛,需要有一个类似基金会或委员会的机构来规范,以达成全球统一标准。
W3C后来发明了一系列的语言和规范:HTML,CSS,XML等。近几年的HTML5也是他们规定的。
W3C 最重要的工作是发展 Web 规范(称为“推荐”,Recommendations),这些规范描述了 Web 的通信协议(比如 HTML 和 XHTML)和其他的构建模块。
W3C的官方网站:
大家想学各种技术(HTML,CSS,XML,Javascript,PHP,等),可以去W3C学院:
对应中文网站是:
总结
- Web(万维网,World Wide Web的简称)是Internet(互联网或英特网)的一个部分,是Internet最为人所知的部分。我们今天用浏览器上网,浏览网页,就是在用Web。
- Internet的诞生比Web早。
- Cloud(云)更像是一个市场化的概念,而不是技术概念。
- W3C组织规定和掌控Web的发展。
第二部分预告
今天的课就到这里,一起加油吧!
下一部分我们学习:Web的编程语言
将会讲到Web的运作原理,包括著名的Client-Server(客户端-服务器)原理等,也会介绍客户端的编程语言和服务器端的编程语言,数据库,响应式网站。
程序员联盟社区
目前有一个微信群和一个QQ群,凡是对编程感兴趣的朋友都可以加,大家可以交流,学习,互动,讨论编写的程序的源代码,编程问答等。
微信群(程序员联盟),加群请私信我(微信群人数超过100之后,不能通过扫描二维码加入了,只能私信我,谢谢)
QQ群: 413981577 (1000人群)
QQ群文件里有很多编程书籍PDF和其他资料。扫描下面二维码加QQ:
我们还建立了一个公共的百度云盘,2TB容量,已有很多优秀编程资源,大家也可以上传。链接加群之后会发送。
百度贴吧 【程序员联盟】 欢迎您加入,交流编程,讨论代码,共享资源,已经有很多话题。吧主就是小编。
http://tieba.baidu.com/f?kw=%E7%A8%8B%E5%BA%8F%E5%91%98%E8%81%94%E7%9B%9F&ie=utf-8
《程序员联盟》的微社区,方便大家提问和互动。可以关注一下。
微社区地址和二维码如下:
谢谢!
![](http://pic.ikafan.com/imgp/L3Byb3h5L2h0dHBzL21tYml6LnFsb2dvLmNuL21tYml6L2lhSEw1bVFMaWNQWU9rSlcyaGtkaWJmYThHUFg3WWdVTk9FZ1hxZ2pTcDQ3VnU5WjBLQUNQS05Wa1l5U0tEaGtuUUw5ZU5TYzM0dGViYXFyTXE0RW9kRjRnLzA/d3hfZm10PWdpZg==.jpg)
程序员联盟
微信公众号
*您若觉得本文不错,请点击画面右上角《···》按钮“分享到朋友圈”或“发送给朋友”
*新朋友请关注「程序员联盟」微信搜公众号 ProgrammerLeague
小编微信号:
frogoscar
小编QQ号: 379641629
小编邮箱: [email protected]
程序员联盟QQ群:413981577
程序员联盟微信群:先加我微信
有朋友反映看手机端的文章太累,其实是可以用浏览器网页来看的:
方法1. 点击画面右上角的《···》按钮,然后选择“复制链接”,再把链接黏贴到你的浏览器里面或用邮件发送给自己,就可以在电脑的浏览器里打开了
方法2. 头条网www.toutiao.com,搜索我的自媒体“程序员联盟”,内有所有文章,也可以直接进这个链接:http://www.toutiao.com/m3750422747/
方法3. 我的51CTO博客,CSDN博客,博客园和开源中国博客链接(所有文章都在上面)
http://blog.csdn.net/frogoscar
http://www.cnblogs.com/frogoscar
http://my.oschina.net/frogoscar/blog
如何查看所有文章:
1. 点击“查看公众号”,再点击“查看历史消息”
2. 在公众号回复任何信息,可以看到包含“查看历史消息”的链接。
【支持小编的劳动】
觉得文章对你有帮助,请纪念小编的辛勤劳动,扫描二维码捐赠给小编,谢谢!
支付宝
Paypal
版权声明:本文为博主原创文章,未经博主允许不得转载。