长时间以来对一些名词感到很困惑,不明白其具体指什么,在此记录一下。

一、切图

1.1 原先理解

从字面意思理解,切图是指将一张大的图切割成很多张小的图片。最早(视频教程网或者我要自学网)看到的视频也是这个意思,并说切图的原因是整张图片放入界面会比较大,为了加快加载速度提升用户体验,至于去除的部分重复的通过css拉长代替颜色可代替的用css颜色代替文字也可以通过CSS调整字体代替。在以前网速是比较大的瓶颈对这个解说还是比较信服的。

1.2 困惑

但后来感觉一些小公司中切图似乎除了上述切割图片,还有按设计稿(使用切割出来的小图)实现web界面的意思。由此陷入了困惑。

1.3 现在理解

今天专门请教了接触前端的同学,其给切图的定义是“根据设计稿和开发人员的需求得到图片”,并明确切图不包实现切图一般是设计师做的而界面实现是前端做的。在其给的一张APP的设计界面和切割成的多张小图例子中,看到很多同一部分的不同大小的图片。由此意识到切图的主要目的已由互联网时代的减小大小转移到移动互联网时代的适配不同屏幕大小上。

由此总结当前切图的意思是,从设计稿上根据开发人员的需求切割出目标位置目标大小的图片,切图的目地一是减小大小二是适配不同屏幕大小。在一些小公司中前端兼职设计师所以切图可能包含编码实现的工作。

二、H5

2.1 原先理解

H5是在HTML5标准完成前后出现的,在开始认为其是指HTML5。

2.2 困惑

后来帮一个同学做网站,他一直念叨要用HTML5那种扁平化风格,你会不会H5那种动画效果,而且公司上下深以为然。什么鬼,HTML5和扁平化有什么关系HTML4就不可以扁平化?H5动画效果HTML4就不可以?

2.3 当前理解

H5是外行人混淆同时期出现的HTML5、扁平化和APP上可播放的类flash动画形成的概念,他的关键不是HTML5而是酷炫的界面或者叫酷炫的界面就是H5不酷炫的界面不是。

三、XML

3.1 原先理解

XML就是一些标签。

3.2 困惑

XML用于传输、存储数据,HTML用于显示数据。XML和HTML长得都差不多,凭什么XML就只能存储数据而HTML就是显示数据。

3.3 当前理解

本质而言XML和HTML都可以存储数据和显示数据,只要你想你就可以用HTML传输和存储数据也可以用XML显示数据。但用HTML传输数据要考滤浏览器直接解析问题,用HTML存储数据则容易造成开发人员将其于html页面混淆;要用XML显示数据那得自己写个支持将xml解析展示的浏览器。

也就是说“XML用于传输、存储数据,HTML用于显示数据”的说法不是由XML和HTML本身决定的,而是为了避免人和浏览器的误解而要求的。

四、REST

4.1 原先理解

看定义都是:REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。

一点都不理解,REST和RESTful什么关系和区别都不理解。

4.2 困惑

《黑客攻防技术宝典web实战篇》等都说:

普通URL是问号后带参数的形式----http://wahh-app.com/search?make=ford&model=pinto

REST风格是参数并入URL的形式----http://wahh-app.com/search/ford/pinto

什么鬼,这在早几年是为了搜索引擎友好而进行的URL重写吧,现在改名叫REST了?以前怎么不见你叫REST,现在又有什么好吹。

4.3 当前理解

现在流行搏出位,有一种方式是咬名人比如考证李清照是个荡妇等等。我也搏出位,因为我要说Roy Thomas Fielding当年提的REST并不就是现在的REST。

我也捕风抓影,一是论文不说人话二是英文水平一般没有耐心逐句分析原文,主要是从侧面分析。

我们首先定义现在的REST,现在REST是随着智能手机(或者叫移动互联网,或者叫多终端)的普及而流行的前后端分离的实现形式,从技术就是客户端和服务端使用xml或json格式进行交互的http,在对外开放的接口中一般使用oAuth认证。百度AI开放平台是典型例子。

在REST的关键组成中,XML是在1998年制定的,json是1999年定义2001年开始推广的,web2.0是2004年才开始有清晰定义的,移动互联网是2007年才开始发端的,oAuth也是2007年才开始攥写的,前后端分离至少应该得在2010后才有的而且国外似乎不怎讲这个东西。所以要说Roy Thomas Fielding大神及时地吸收了新技术还是可信的,但他能在电脑都很差劲的年代提出为多终端而生当今REST是不怎么能令人信服的。

所以我个人只相信Roy Thomas Fielding大神提出了REST这个词,而不相信他提出了当今的REST;正如牛顿说的光的粒子性和当前说的光的粒子性不是一回事。

参考:

https://www.cnblogs.com/shiy/p/6577080.html

https://www.cnblogs.com/padding1015/p/7085539.html

https://www.ics.uci.edu/~fielding/pubs/dissertation/fielding_dissertation.pdf

https://scholar.google.com/scholar?q=roy+fielding

那些令人迷惑的名词:切图/H5/XML/REST的更多相关文章

  1. 移动端rem切图

    1.为什么用rem 根据屏幕大小,自动调整大小 2.如何使用rem 分以下几步 a.用ps把设置稿弄成640px或者750px的(记得等比例缩放) b.调试时记得把浏览器默认最小字体设置为最小.手机端 ...

  2. 前端切图实战(PSD设计稿转化为前端)

    课程来源:https://www.imooc.com/learn/668 一:读设计稿 划分:头部.尾部.公共部分.大概分多少块.logo的重用.列表有哪些.各部分用什么技术实现等等. 二:建立项目目 ...

  3. 移动端rem自适应布局(切图)

    本篇适用于初次使用rem为单位切图而无从下手的童鞋.核心是根据屏幕动态改变根元素字体大小,以达到适配各种屏幕.这只是一个拿来就用的教程.很多东西没有详细说明.不过对于快速做手机端切图很有帮助. 模板: ...

  4. 前端初级技能No.1 [切图]

    “切图”是指通过测量设计稿,从设计稿中提取图片等方式为页面开发提供支持的过程. 整个“切图”过程主要分为以下五个主要步骤: 分析设计图: 测量元素: 提取图片: 保存图片: 图片优化与合并: 1.分析 ...

  5. App切图命名规范

    转自:http://www.uisdc.com/slice-rename-in-ui-design(略有修改) 关于切图命名的规范,我个人觉得关键是在于团队能够有一个统一的规则,所有成员严格遵守并且和 ...

  6. 关于png、jpg、gif切图时的使用感悟

    关于png.jpg.gif切图时的使用感悟 曾经切图时都是一股脑所有图全切成jpg格式,最近突然心血来潮简单的研究了下其他图片格式的具体属性,才突然发现走了不少弯路,并没有做到使图片用最小体积展现出最 ...

  7. iOS设计 - 一款APP从设计稿到切图过程概述

    这篇文章站在GUI设计师的角度概述了APP从项目启动到切片输出的过程,相当于工作流程的介绍.这里写的不是一种规范,只是一种工作方法,加上技术的更新是非常快的,大家在具体工作中,一定要灵活运用. 这里我 ...

  8. iOS - 如何切图适配各种机型

    关于iPhone6/6+适配问题一直有争议,今天小编专门为大家整理了相关的有效方案,希望对大伙儿有帮助! 移动app开发中多种设备尺寸适配问题,过去只属于Android阵营的头疼事儿,只是很多设计师选 ...

  9. 切图时图片的选择:JPG、PNG、GIF的区别

    目前网站图片的采用一共有流行三种,分别是JPG.PNG.GIF,然而很多人并不知道三者在选择的时候究竟应该选谁.虽然都可以存储图片,但是如果要发布到网上,就必须考虑速度.大小和失真程度的问题.如果你运 ...

随机推荐

  1. [js]js设计模式-构造函数模式

    构造函数模式 function WriteJsPerson(name,age) { this.name=name; //不用手动创建obj this.age = age; this.writeJs=f ...

  2. Linux下安装Gensim

    依赖软件包:numpy 直接使用pip安装: [root@mycentos ~]#pip install gensim 安装gensim的时候会遇到下面的一系列错误: Cannot uninstall ...

  3. js 执行机制

    浏览器中每个一个窗口都是一个单独的进程.这就需要分析浏览器与Javascript解释引擎之间的关系.先给出结论,浏览器本身是多线程的,Javascript解释引擎是单线程的. 先说说浏览器有哪些线程, ...

  4. mysql日志介绍

    1. 错误日志 错误日志记录的事件: a. 服务器启动关闭过程中的信息 b. 服务器运行过程中的错误信息 c. 事件调试器运行一个事件时间生的信息 d. 在从服务器上启动从服务器进程时产生的信息 2. ...

  5. js实现复制内容到剪切板,兼容pc和手机端,支持Safari浏览器

    Javascript原生有一些事件:copy.paste.cut, 这些事件可以作用的目标元素: 能获得焦点的元素 (如contentEditable内容能编辑或者可以选中的元素),或者是<bo ...

  6. sql_mode 之 ignore_space

    用于忽略mysql系统函数名与之后的括号之间的空格. 还是给个形像的说明吧如:count   (*) 通过设置ignore_space 这个sql_mode 就可以把空格给忽略变成count(*) 1 ...

  7. flutter_webview_plugin 无法加载网页的异常处理

    Flutter 本身并未集成webview,所以当需要使用webview 的时候,使用flutter_webview_plugin插件,也就是使用的原生webview组件, flutter_webvi ...

  8. PXC添加新节点

    先拉数据,再启用节点,可以避免SST 拉数据 [root@pxc_node1_172.16.11.132 ~]# /usr/bin/innobackupex --defaults-file=/etc/ ...

  9. Mysql 集合链接查询

    MySQL NULL 值处理 需求:我们已经知道MySQL使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作. ...

  10. Linux LVM卷组管理

    Linux LVM卷组管理 由于传统的磁盘管理不能对磁盘进行磁盘管理,因此诞生了LVM技术,LVM技术最大的特点就是对磁盘进行动态管理. 由于LVM的逻辑卷的大小更改可以进行动态调整,且不会出现丢失数 ...