0,Web基础

一、    What is the Web? Can It Eat?

很多同学可能都听说过一个名词叫做“Web”,这个词隐隐约约好像和我们上网相关。但是呢,又很难说的清楚。我们今天每位同学都可以通过电脑,手机,平板电脑等设备上网,无论你是用微信,QQ和小伙伴们及时联系,还是用淘宝,京东等购物网站或手机APP选购你钟爱的产品,甚至你在无聊的时候打开浏览器在门户网站上,搜索引擎上查看你关心的新闻,似乎我们的生活每天都被互联网大环境所包围。那么“Web”和这些互联网站或者是手机APP之间到底有什么关联呢?哪些我们见到的应用是“Web”,哪些又不是呢?我们该如何分辨呢?

我们首先来看一下关于“Web”这个单词的官方解释,词条当然来自于度娘。

哇塞!这种解释好生硬啊,似乎还是不明白,但是没关系,下面的表现形式有三种:超文本,超媒体,超文本输出协议。这三个到底是什么鬼呢?听我一一解释。

超文本(Hyper Text):文本就是指的是我们在上网的过程中看到的那些文字比如你在起点中文网看到的一篇小说,小说中的文字就是文本,你在新浪等门户网站上看到的一篇新闻报道,新闻报道中的文字就是文本,这里需要注意一点就是,不管你看到的文字是什么语言,中文,英文,日文,韩文,他们就是文本。那么,什么是超文本的,顾名思义,超文本就是提供给用户看的界面不仅仅是文字,也可以看到图片,听到音乐,看到视频,这些很多元素共同构成了超文本的概念。这个概念也可称为超媒体。两个概念可以互换。

超文本输出协议:就是通过互联网中的一个网络协议将这些超文本元素或者超媒体元素把这些元素从网络中带到用户的电脑中,并且呈现在用户面前。一般我们说的这个协议就是http协议,后面我们会详细解释它。

好了,那么让我们用一句话来解释我们玩过的设备中什么应用是Web,记住,就是凡是能够用浏览器打开的网站就是Web.除此之外,其余,凡是需要下载安装的那些应用一律都不是Web。这是最基本的分辨方法。现在就解释清楚了。

二、    Web的架构以及相关技术都有哪些

其实目前在IT互联网众多技术中,有很多技术可以提供同学们学习,你们常常也听到许多技术名词,什么C/C++,JAVA,PHP,.NET,Python,HTML,CSS,JavaScript,Unity3D,MySQL,MSSQL,Oracle等等五花八门的技术让同学们眼花缭乱。想学一门技术吧!又不知道怎么选择,那种技术前途好,那种技术钱途好。关于这些问题,暂不赘述,以后我会专门针对技术学习迷茫的同学写一篇报道或是直播讲解怎么选择。

目前市场上的主流开发方式有两种,C/S或B/S

1)    C/S架构(Client/Server,客户端/服务器)

Client就是客户端应用,说白了就是需要下载安装的软件,这个软件和服务器相连接,然后用户使用功能,比如我们大家都玩的QQ,下载安装,我们所有的聊天都是通过网络发送和接受信息。酷我音乐盒下载安装,通过网络获取音乐收听。这种应用就属于Client/Server 。

2)    B/S架构(Browser/Server,浏览器/服务器)

Browser就是浏览器,很显然,通过打开浏览器软件,在浏览器的地址栏上输入一个地址,比如说,http://www.baidu.com.那么浏览器就会向所指向的服务器发送一个请求,把服务器上的网站下载到自己的浏览器上面,我们就可以查看了。这个相信绝大多数同学都可以明白。

还有一个问题,就是什么是服务器?有很多同学一想到服务器脑海里就想到很多高大上的高配置电脑,长得各种各样。其中,服务器就是一套电脑。比如我们在寝室和同学打游戏,建立一个房间,就相当于建立了一个服务器,其他同学纷纷进入你的房间,开始对战,那么你的电脑就成了一个服务器。

服务器就是为网络提供服务的电脑。你刚才建立的游戏房间就是一个游戏服务器,为你的同学提供打游戏的服务。你的电脑安装了提供Web服务的软件(IIS),那么你的电脑就变成了Web服务器,把你自己做好的网站放在这个软件下面发布,大家就可以通过你的电脑访问到你的网站了。服务器的种类有很多种:ftp,邮件,视频,数据库等等。只要记住一件事情,服务器没有什么神秘的,凡是一个普通的电脑,安装了提供某种服务的软件,这么你的电脑就变成了一种服务器。我们做Web的工程师主要用的就是Web服务器,后面我会给大家详细解释。

三、 恭喜你选择了Web,而不是其它,没有入错行,也没有嫁错郎

在这个移动互联网时代,无论是从大环境的国家层面的“互联网”,还是现在几乎所有的企业都需要通过互联网技术进行产业升级。转行。总之,突然一下子。几乎所有的行业对互联网技术开发人才都趋之若鹜。所以,如果你选择了将来从事Web开发,我只能由衷的对你说一句,这可能是对你未来人生中能做出的最对的选择。那么我们Web都设计到那些技术呢!其实说白了,就是分为Web前端和Web后端。如下图所示。

这里要说一下,为什么不建议在学习IOS和安卓。首先说从整个世界的技术发展大趋势来看。B/S取代C/S是必然的趋势。安卓应用程序和IOS应用程序就是属于C/S开发。比如说,我要开发一个APP。那么我就需要找一个安卓工程师和一个IOS工程师分别开发两种手机的应用程序。这就需要两个人员成本。而且,APP的版本会不断升级的,凡是手机安装过APP的人都知道,APP升级动辄几十兆,多则几百兆,有WIFI环境的还好说,没有wifi的,那就只能费流量了(钱,钱,钱)。但是利用Web技术通过浏览器就不存在这个问题了,不管哪种平台的手机,总有浏览器吧!通过浏览器几乎可以实现任何功能,不管是网购,聊天(微信本质上也是一个浏览器),还是你看新闻。并且并不需要你更新,只需要网站更新,你直接打开浏览器就可以呈现。方便易用。所以。我们同学们今天要学习的是Web技术。而不是在那些淘汰的安卓和IOS。

(0)写给Web初学者的教案-----Web基础的更多相关文章

  1. (1)写给Web初学者的教案-----学习Web的知识架构

    1:学习Web的知识架构 前文中我们简单的介绍了一些关于Web的基本知识,这里任老师再次强调一下凡是用浏览器打开的网站我们就称之为Web应用程序(B/S结构).除此之外其它需要下载安装的软件或是手机  ...

  2. (2)写给Web初学者的教案-----让我们开始准备学习

    课前准备 我们将会从零基础带领大家一步一步的学习Web前端技术,这个零基础是什么概念呢?你只要具备以下技能就可以学习: 一.个人学习条件(必备) 会开关电脑,手机.(哇塞,任老师你逗我们吧!). 会打 ...

  3. 【转载】.NET面试题系列[0] - 写在前面

    原文:.NET面试题系列[0] - 写在前面 索引: .NET框架基础知识[1] - .NET框架基础知识(1) http://www.cnblogs.com/haoyifei/p/5643689.h ...

  4. 一个web初学者的笔记总结

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC" } p.p2 { margin: 0.0px ...

  5. 05、NetCore2.0依赖注入(DI)之Web应用启动流程管理

    05.NetCore2.0依赖注入(DI)之Web应用启动流程管理 在一个Asp.net core 2.0 Web应用程序中,启动过程都做了些什么?NetCore2.0的依赖注入(DI)框架是如何管理 ...

  6. 【HTTP】Speed and Mobility: An Approach for HTTP 2.0 to Make Mobile Apps and the Web Faster

    This week begins face to face meetings at the IETF on how to approach HTTP 2.0 and improve the Inter ...

  7. VS中,添加完Web引用(WebServer引用/Web服务引用),写代码时引用不到

    VS中,添加完Web引用(WebServer引用/Web服务引用),写代码时引用不到 添加完之后要等一会儿 等一会儿 等一会儿 就有了

  8. 转 web项目中的web.xml元素解析

    转 web项目中的web.xml元素解析 发表于1年前(2014-11-26 15:45)   阅读(497) | 评论(0) 16人收藏此文章, 我要收藏 赞0 上海源创会5月15日与你相约[玫瑰里 ...

  9. Rest风格WEB服务(Rest Style Web Service)的真相

    http://blog.csdn.net/jia20003/article/details/8365585 Rest风格WEB服务(Rest Style Web Service)的真相 分类: J2E ...

随机推荐

  1. asp.net客户端IP跟踪

    /// <summary> /// 获取客户端IP地址(无视代理) /// </summary> /// <returns>若失败则返回回送地址</retur ...

  2. Backdoor CTF 2013: 电子取证 250

    0x00 题目 h4x0r厌烦了你对他的城堡的所有攻击,所以他决定报复攻击你,他给你发来一封带有图片的邮件作为警告,希望你能找出他的警告消息:-) 消息的MD5值就是flag. 0x01 解题法1 给 ...

  3. [TensorFlow] Basic Usage

    Install TensorFlow on mac Install pip # Mac OS X $ sudo easy_install pip $ sudo easy_install --upgra ...

  4. C++编程练习(7)----“KMP模式匹配算法“字符串匹配

    子串在主串中的定位操作通常称做串的模式匹配. KMP模式匹配算法实现: /* Index_KMP.h头文件 */ #include<string> #include<sstream& ...

  5. IP查询接口

    腾讯的: http://fw.qq.com/ipaddress直接返回本机的IP地址对应的地区新浪的:http://counter.sina.com.cn/ip?ip=IP地址返回Js数据,感觉不是很 ...

  6. 关系型数据库MySql-模糊搜索优化(like %abc%):全文搜索引擎技术选型

    1.阿里云OpenSearch 阿里云开放搜索OpenSearch是一款阿里巴巴自主研发的大规模分布式搜索引擎平台,该平台承载了淘宝.天猫.1688.神马搜索.口碑.菜鸟等搜索业务,通过OpenSea ...

  7. ajaxFileUpload.js 无刷新上传图片,支持多个参数同时上传,支持 ie6-ie10

    /* 131108-xxj-ajaxFileUpload.js 无刷新上传图片 jquery 插件,支持 ie6-ie10 依赖:jquery-1.6.1.min.js 主方法:ajaxFileUpl ...

  8. 将vim打造成php的IDE开发环境

    将vim打造成IDE开发环境 本文主要介绍将vim打造成IDE开发环境,如代码补全,高亮显示,函数跳转,函数自动注释等 首先介绍2款VIM插件管理器:Vbundle,Pathogen 本文中的vim插 ...

  9. Xamarin组件包 Xamarin.ToolKit第二波

    Xamarin.ToolKit第二波 一 圆角按钮 xamarin.froms提供的标准button按钮设置了圆角和边框,都没有明显圆角样式,于是乎自己重写了渲染类.道理吧就是重写ButtonRend ...

  10. JavaScript内置对象-Array

    ▓▓▓▓▓▓ 大致介绍 除了Object之外,Array类型恐怕就是JavaScript种最常用的类型了,JavaScript中的数组与其他语言中的数组有很大的区别,例如,数组的每一项可以存放任何值, ...