雷电接口是什么为了什么

网线接口为什么是 RJ45 规格,而不能做成 USB 型?
【时国怀的回答(22票)】:
如果是说接口形状和线缆为啥不做成的?
挺好的啊,传输距离100米(USB是5米),也算即插即用,8根线(USB是4根)大小和体积基本差不多,我觉得设计的挺好的啊。
如果说网线上的卡口不方便,网线本来就不是频繁插拔的设备,没事谁换网线呢?可移动设备?可移动设备有wifi啊。
8根线,100米传输距离,100Mbps-1000Mbps带宽,想做得细一点还真不容易呢。
如果是说为什么USB协议不取代网络协议?
USB传输距离短、带宽低,你看看1Gbps的网络早于USB3.0多少年?七类线都能达到10Gbps了,USB3.0才5Gbps,所以速度还达不到。
以太网有光纤,USB没有。
USB是主机-设备模式,是非对等结构,主机停机,设备之间就无法通信。以太网是总线结构,任何一个节点挂了都不影响整个网络。这么好的东西,USB怎么可能替代?USB是有OTG,但我现在还没见到一个产品化的设备能在不重新链接的情况下自动切换主机-设备的位置。
所以USB想替代网络,要走的路还很长。
如果是比较接头的问题?
关于水晶头的好坏问题,我把评论里的内容补充上来,首先USB接口的出现是很晚的,最早的USB接口出现在1995年,此时百兆以太网的标准早就出来了,USB的速度才1Mbps多一点。所以,水晶头作为一个当时已经比较成熟的设备,一般不会轻易改变的,要知道改变接口涉及到无数厂商,改起来阻力是很大的。
而且改变接头不仅仅是PC端的事情,还涉及到从接入到核心的整个互联网,像核心交换机的线卡,一个几千上万甚至几十万的价格,改模具的成本太大了,所以仅仅PC用户的需求是不能完全改变现状的。
USB是4根线(3.0是5根),传输距离是5米,双绞线(网线)是8根,传输距离是100米,这两者的电气性能差距是很大的,双绞线的屏蔽性更好。这就意味着网线本身不可能做的太细,那么水晶头也不能做的太小,比较一下micro-A的接头大小与USB线大小的比例,再看看水晶头和网线,比例上差别不大,所以想要把水晶头做的更小其实是有困难的,也会影响屏蔽性。
至于易用性方面,这一点USB确实很好,但各位是否想过网线本身是否是一个频繁插拔的设备呢?我相信很多人都遇到过正在充电的手机不小心拔下来的情况,我相信插着网线的人多数情况下不希望自己网线被误拔,所以网线才有卡口的设计。而且有线设备都不是为了可移动设计的,在wifi可以满足可移动性的前提下,水晶头的改造也不是一个迫切的需求。
基于以上几个原因,水晶头还是保留了下来。
【知乎用户的回答(3票)】:
一个是为了你插上去就不好拔下来设计的,一个是为了方便经常插拔设计的。一个是为了可以随意制作任意长度的线而设计的,一个是为了只能配固定长度的线或设备上自带接口而设计的。
【KaiserLi的回答(2票)】:
其实从用户的角度讲,这的确是很好的创新点。
对于用户来说,网线口和USB口有什么区别?为什么不能都用扁扁的USB口呢?多省事啊。
技术是用来实现愿望的,不是拿来讲述历史的。
【方方的回答(1票)】:
看到这问题真是忍不住。

网线接口为什么不能做成USB型的?
理论和实际都是,当然可以!但是为什么要做成USB型的,USB接口有那么多种,目的是为了连接设备与PC的方便,它跟网络设备有几毛钱关系?RJ45接口设计成这样,有它的历史与现实原因。无论如何,4对双绞差分线总比你1对平行差分线性能要好吧?
为什么USB协议不取代网络协议?
我老人家差点吐血。这问题跟“母鸡为什么不能下鸭蛋”是一样的。USB协议是解决周边设备与PC的连接问题,协议主要考虑各种设备特点、描述、传输、即插即用、供电省电等等。网络协议跟这些有几毛钱关系?
别说有多远的路了,这条路根本就不存在。
USB无线网卡
我估计,题主想起这个问题,多半是因为看到插到笔记本上的USB无线网卡,想到了这么多。这是两码事。支持USB的网卡,USB能传网络数据,跟以上两个问题没有关系。无线网卡既有网络设备的属性,但更是一个周边设备。
铁轨上面能跑火车,高铁在普通铁路上也能开,但高铁网络可不是普通铁路。
【kaishen的回答(0票)】:
USB只有一对差分信号线,RJ45可以做到4对,所以在同等信号品质和介质的情况下,RJ45的带宽能比USB型的高。
另外个人认为传输距离和接口没关系,都是铜材质的,极限也就在100M之内(1000Mbps之下)。
RJ45之所以能传更长距离是因为PHY层有pre-emphsis这类模块,能保证在长距离传输的条件下,信号不至于衰减得太厉害。
【李子予的回答(0票)】:
RJ45接口做成USB形状倒是不必要,不过弄一个mini 网络接口标准出来貌似还挺好的,现在笔记本越来越薄,很多超级本的厚度都塞不下一个 标准的RJ45接口,只能用wifi上网。弄一个mini网线接口,厚度和usb接口差不多,没有wifi时还可以用网线。
&&&&&本文固定链接:
【上一篇】
【下一篇】
您可能还会对这些文章感兴趣!
最新日志热评日志随机日志温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
至今都还不清楚自己的漳州小子在这里开了这个小博客...写写日志、心情...呵呵
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(234)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_081066',
blogTitle:'什么是接口?为什么要定义接口?接口与类有和异同?',
blogAbstract:'我们把用于完成特定功能的若干属性组织成相对独立的属性集合。这种属性的集合就是接口。 \r\n定义接口与定义类非常相似。实际上完全可以把接口理解成为一种特殊的类,接口是由常量和抽象方法组成的特殊类。一个类只能由一个父类,但是它可以同时实现若干个接口。这种情况下如果把接口理解成特殊的类,那么这个类利用接口实际上就获得了多个父类,即实现了多重继承。与类定义相仿,声明接口时也需要给出访问控制符,不同的是接口的访问控制符只有public一个。用public修饰的接口是公共接口,可以被所有的类和接口使用,而没有public修饰符的接口则只能被同一个包中的其他类和接口利用。接口也具有继承性。定义一个接口是可以通过extends关键字声明该新接口是某个已经存在的父接口的派生接口,它将继承父接',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:1,
publishTime:4,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'至今都还不清楚自己的漳州小子在这里开了这个小博客...写写日志、心情...呵呵',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}为什么做接口测试 -
- ITeye技术网站
博客分类:
一、为什么做接口测试
目前的BS结构的软件层级体系大致如下,对此的功能测试也主要是针对表现层的内容,下图灰色的部分是未测试的内容(占80%的比例)。
对于较小型的网站,通过表现层的测试,路径会大致渗透到下面各个层级。但是一个超大型的网站,其层级会有4层甚至更多,每一个层级又可能包含相互关联的不
同业务。如同一个城市的自来水系统,如果只测试水龙头里面是否有水,水质是否优良,这显然远远不够。要想点办法对此进行改进,设想如下图。
对于底下几层,采用单元测试,持续集成;对于表现层,采用QTP和类似的工具,编写测试代码,设计测试条件,做到大部分的自动化测试。这样以来,测试的覆
盖率会大大提升(灰色部分占20%左右)。如此测试,从技术上来看并没有太大的障碍,从成本上来讲,就是需要大批的能写测试代码的技术人员,这些人员的技
能丝毫不逊于开发人员,他们需要完成的测试代码量要高于软件本身的代码量。而一旦自动化的功能测试体系建立起来,在软件的重构和发展的过程中,测试的效率
会大大提高。一个成熟的测试体系运转起来就像下图所示了。前图是测试的几个纬度,后图是功能测试的几个组成部分。
而整个测试的流程大致如下:(其中安全测试是功能测试的一部分)
二、选用什么样的测试工具
基于Java技术的软件代码,有一些比较成熟的测试框架,Junit、Dbunit等等。Junit已经有了很长时间的应用,在JDK1.5之后,其推出
了基于annotation的Junit4.4版,使单元测试的代码更加简洁,开发人员可以更加专注于对接口中业务逻辑的校验。Dbunit是一个测试数
据的框架,它能够使用excel或xml文件里的数据来对数据库做插入,对比,删除等逻辑,可以完成数据的生成和校验。Junit和Dbunit结合使用
就可以完成业务逻辑和数据方面的校验。
当一个项目的测试代码编写完毕的时候,我们需要对此进行持续集成,业界总是有一些慷慨无私的人来帮助可爱的开发人员,CruiseControl是一个不
错的持续集成工具。每当有代码提交到版本管理工具的时候,它都不知疲倦的执行测试代码,通过邮件和IM软件告诉我们,哪些通过测试了,哪些发现问题了。这
个时候你可以相当有自信的说“一切尽在掌握”,这神情会比刘德华都要帅。
但对于一个大型的网站来说,其单元测试也非测试“helloWorld”一样如此简单,最大的难题是解决代码之间的依赖性。淘宝网主演
要的架构是基于Spring的,一般的系统分至少三层,业务层、逻辑层、持久层。spring架构下这三层通过配置文件来装载起来,持久层依赖于自己的配
置文件、逻辑层依赖于自己的和持久层的、业务层依赖于三种配置文件。如果有发送邮件,调用外部接口等,还需要相应的配置文件和接口服务器。这种情况下,要
做一个单元测试,需要配置很多东西,任何一个配置有误都无法启动spring容器,而且这些配置都在xml文件里面,内容是否正确无法自动检测。要做业务
层的测试,不是一个容易的事情。其中持久层的东西相对固定,需要配置的文件也较少,相比较而言,这一层测试很容易完成,逻辑层和业务层的测试难度成指数性
增长。三、需要什么样的工作流程
我们不要提测试驱动开发,或者TDD之类的名词,适合我们的就是最好的,或许我们可以成为测试开发并驾齐驱。接口测试的工程师我们叫做测试开发工程师,在
项目启动的时候就要参与进来,要做需求的分析,系统设计,在开发人员编写功能代码的同时,我们在编写测试代码,无所谓谁快谁慢,写好功能代码就测试,或者
写好测试代码就写功能实现。当编码完毕的时候,也是接口测试完毕的时候,然后测试开发工程师写一份测试报告,送给功能测试工程师,告诉他们哪些东西我们测
试过,哪些东西需要重点关注。
当系统发布运行之后,功能修改的时候我们修改测试代码,平时我们就重点关注CruiseControl,一旦它报错,那一定是有些代码出问题了,Just fix it!四、需要什么样的规范
Java编码规范想必都比较清楚,OK,去做好它。另外请在注释里面写清楚测试的场景,输入输出,异常情况。测试代码的可读性一定要高于功能代码。五、到底是单元测试还是接口测试
OK,看这么多想必都搞糊涂了,我们测的是接口,写的是单元测试的代码,爱叫什么是什么吧。
浏览: 122771 次
来自: 武汉
17:05:26 Diet handle ...
&!-- 上面3个 import 为导入
还有一种方法就是将新版本的jar包引入到工程中,这样最简单
demo级的应用没什么问题,一部署到系统中,就可能会出异常。专 ...

我要回帖

更多关于 hdmi接口是什么 的文章

 

随机推荐