• 关于

    大数据交互动画

    的搜索结果

回答

CGI是一种标准,Nginx则是一种应用。从浏览器的角度来看,浏览器只负责发送请求,接收来自WebServer的返回结果并渲染之。对于WebServer来讲,它需要做的仅仅是接收请求,寻找浏览器请求的文件并且发送回去。如果仅仅是这样,世界就很完美了。但是后来发生的事情大家都知道了。。我们不光要浏览静态网页,我们还要登陆论坛、发帖骂人灌水踩答案点赞刷声望等等。这些行为是静态的Html没法完成的。所以有了JS、Flash等等基于前端的交互技术。WebServer把包含了这些代码的文件发给浏览器,后者把它解析称它应该有的样子(或者不应该有的样子,比如IE6),我们可以在页面上看看动画什么的,这些称之为前段交互技术。但是有些交互前端做不了, 比如我上次发了一个高清无码套图,我要看到大家的反应,点个赞啊楼主好人啊之类的,那么这个技术就要用到数据库,但是数据库本身是需要另外一种语言来操作的,这种语言可以是python、prel、Ruby、PHP等等,我们称之为动态语言。他们对数据库进行增删查改四大操作,并且返回结果给WebServer,后者再传给浏览器。由于有很多动态语言和很多种Web服务器,他们彼此之间互不兼容,给程序员造成了很大的麻烦。那么,CGI应运而僧。CGI的定义是统一网关接口。从此WebServer收到后台动态交互请求就直接发给CGI,CGI发给动态语言,动态语言把结果发回给CGI,CGI再发回给WebServer,后面的事情你都清楚了。。。。那么结论就是,CGI是一个翻译层,它的功能不是直接提供结果给浏览器,而是翻译来自WebServer的请求并转给后台的应用程序,并且把执行结果翻译成静态网页返回给WebServer,所以,是不能互换的。
西秦说云 2019-12-02 01:33:26 0 浏览量 回答数 0

问题

前端从接过设计稿以后, 怎样调整界面?

在做的应用, 交互有点多, 设计给了 PSD, 细节照做遇到挺多问题:浏览器端的字体和 PS 文件的字体不完全一样的, 而且要考虑其他平台字体排版, 有的地方说是统一间距来保持整齐, 前端比较控制行高当字体大小并不一样的时候, 怎么样处理更...
a123456678 2019-12-01 19:27:38 1477 浏览量 回答数 1

问题

管理系统前端页面开发报错 

项目需求: 公司自有一套管理系统,现采用前后端分离开发、接口交互的开发模式,服务端已有相 应业务接口。 现需要经验丰富的前端工程师协助进行该系统前端页面及开发框架的开发实现,管理系 ...
kun坤 2020-06-10 13:23:06 29 浏览量 回答数 2

Quick BI 数据可视化分析平台

2020年入选全球Gartner ABI魔力象限,为中国首个且唯一入选BI产品

回答

回 5楼(otkdl) 的帖子 此类廉价方案,我们确实在几年前就研发出来了(2006年~2008年),并已在一些大型动画公司得以实用。当时我们的软件系统因为在人机交互方面考虑得比较周到,所以打败了deadline,最终融入到了他们实际生产流程中。在规模小的时候,这样的方案是挺好用的。当时用这套小系统的工作人员激动不已,说不再需要一台台拷数据,手动提任务了,鼠标点点即完成任务,效率也提高了数倍。 但是后来随着我们逐渐帮助这些公司扩大机器规模(超过50台时),遇到了数据的传输瓶颈,任务的整体管理,日常机房维护,机器更新成本等等一系列问题。所以,我们着眼于未来,着手开发基于云计算平台的新版本。事实证明这个新的架构,解决了很多之前的各种难题。从我实际这么多年开发渲染农场系统体会来说,这是未来的发展趋势。 不好意思,看到您的评论,有感而发,写了一大堆东西出来。
kullzhang 2019-12-02 02:45:15 0 浏览量 回答数 0

回答

回 5楼(otkdl) 的帖子 此类廉价方案,我们确实在几年前就研发出来了(2006年~2008年),并已在一些大型动画公司得以实用。当时我们的软件系统因为在人机交互方面考虑得比较周到,所以打败了deadline,最终融入到了他们实际生产流程中。在规模小的时候,这样的方案是挺好用的。当时用这套小系统的工作人员激动不已,说不再需要一台台拷数据,手动提任务了,鼠标点点即完成任务,效率也提高了数倍。 但是后来随着我们逐渐帮助这些公司扩大机器规模(超过50台时),遇到了数据的传输瓶颈,任务的整体管理,日常机房维护,机器更新成本等等一系列问题。所以,我们着眼于未来,着手开发基于云计算平台的新版本。事实证明这个新的架构,解决了很多之前的各种难题。从我实际这么多年开发渲染农场系统体会来说,这是未来的发展趋势。 不好意思,看到您的评论,有感而发,写了一大堆东西出来。
kullzhang 2019-12-02 02:46:00 0 浏览量 回答数 0

回答

回 5楼(otkdl) 的帖子 此类廉价方案,我们确实在几年前就研发出来了(2006年~2008年),并已在一些大型动画公司得以实用。当时我们的软件系统因为在人机交互方面考虑得比较周到,所以打败了deadline,最终融入到了他们实际生产流程中。在规模小的时候,这样的方案是挺好用的。当时用这套小系统的工作人员激动不已,说不再需要一台台拷数据,手动提任务了,鼠标点点即完成任务,效率也提高了数倍。 但是后来随着我们逐渐帮助这些公司扩大机器规模(超过50台时),遇到了数据的传输瓶颈,任务的整体管理,日常机房维护,机器更新成本等等一系列问题。所以,我们着眼于未来,着手开发基于云计算平台的新版本。事实证明这个新的架构,解决了很多之前的各种难题。从我实际这么多年开发渲染农场系统体会来说,这是未来的发展趋势。 不好意思,看到您的评论,有感而发,写了一大堆东西出来。
kullzhang 2019-12-02 02:44:25 0 浏览量 回答数 0

回答

回 5楼(otkdl) 的帖子 此类廉价方案,我们确实在几年前就研发出来了(2006年~2008年),并已在一些大型动画公司得以实用。当时我们的软件系统因为在人机交互方面考虑得比较周到,所以打败了deadline,最终融入到了他们实际生产流程中。在规模小的时候,这样的方案是挺好用的。当时用这套小系统的工作人员激动不已,说不再需要一台台拷数据,手动提任务了,鼠标点点即完成任务,效率也提高了数倍。 但是后来随着我们逐渐帮助这些公司扩大机器规模(超过50台时),遇到了数据的传输瓶颈,任务的整体管理,日常机房维护,机器更新成本等等一系列问题。所以,我们着眼于未来,着手开发基于云计算平台的新版本。事实证明这个新的架构,解决了很多之前的各种难题。从我实际这么多年开发渲染农场系统体会来说,这是未来的发展趋势。 不好意思,看到您的评论,有感而发,写了一大堆东西出来。
kullzhang 2019-12-02 02:42:46 0 浏览量 回答数 0

回答

回 5楼(otkdl) 的帖子 此类廉价方案,我们确实在几年前就研发出来了(2006年~2008年),并已在一些大型动画公司得以实用。当时我们的软件系统因为在人机交互方面考虑得比较周到,所以打败了deadline,最终融入到了他们实际生产流程中。在规模小的时候,这样的方案是挺好用的。当时用这套小系统的工作人员激动不已,说不再需要一台台拷数据,手动提任务了,鼠标点点即完成任务,效率也提高了数倍。 但是后来随着我们逐渐帮助这些公司扩大机器规模(超过50台时),遇到了数据的传输瓶颈,任务的整体管理,日常机房维护,机器更新成本等等一系列问题。所以,我们着眼于未来,着手开发基于云计算平台的新版本。事实证明这个新的架构,解决了很多之前的各种难题。从我实际这么多年开发渲染农场系统体会来说,这是未来的发展趋势。 不好意思,看到您的评论,有感而发,写了一大堆东西出来。
kullzhang 2019-12-02 02:41:48 0 浏览量 回答数 0

回答

回 5楼(otkdl) 的帖子 此类廉价方案,我们确实在几年前就研发出来了(2006年~2008年),并已在一些大型动画公司得以实用。当时我们的软件系统因为在人机交互方面考虑得比较周到,所以打败了deadline,最终融入到了他们实际生产流程中。在规模小的时候,这样的方案是挺好用的。当时用这套小系统的工作人员激动不已,说不再需要一台台拷数据,手动提任务了,鼠标点点即完成任务,效率也提高了数倍。 但是后来随着我们逐渐帮助这些公司扩大机器规模(超过50台时),遇到了数据的传输瓶颈,任务的整体管理,日常机房维护,机器更新成本等等一系列问题。所以,我们着眼于未来,着手开发基于云计算平台的新版本。事实证明这个新的架构,解决了很多之前的各种难题。从我实际这么多年开发渲染农场系统体会来说,这是未来的发展趋势。 不好意思,看到您的评论,有感而发,写了一大堆东西出来。
kullzhang 2019-12-02 02:43:34 0 浏览量 回答数 0

问题

阿里云云盾 · 混合云解决方案

在刚刚过去的2016杭州 · 云栖大会上,阿里云云盾 · 混合云安全解决方案首次亮相,意味着阿里云上的安全能力,现可以赋能给专有云和本地机房的用户。解决方案介绍页也于今日正式登陆阿里云官网ÿ...
觉宇 2019-12-01 21:34:25 2450 浏览量 回答数 1

问题

广州.NET男屌求职 热:报错

差不多两年的经验吧,一直是做.NET,工具当然是VS+MSSQL,偶尔做了一两个项目是用mysql的,从毕业以来一直在一间公司工作(我很忠诚的哦)&...
kun坤 2020-06-08 11:11:12 3 浏览量 回答数 1

回答

一、BMP格式 BMP是英文Bitmap(位图)的简写,它是Windows操作系统中的标准图像文件格式,能够被多种Windows应用程序所支持。随着Windows操作系统的流行与丰富的Windows应用程序的开发,BMP位图格式理所当然地被广泛应用。这种格式的特点是包含的图像信息较丰富,几乎不进行压缩,但由此导致了它与生俱生来的缺点--占用磁盘空间过大。所以,目前BMP在单机上比较流行。 二、GIF格式 GIF是英文Graphics Interchange Format(图形交换格式)的缩写。顾名思义,这种格式是用来交换图片的。事实上也是如此,上世纪80年代,美国一家著名的在线信息服务机构CompuServe针对当时网络传输带宽的限制,开发出了这种GIF图像格式。 GIF格式的特点是压缩比高,磁盘空间占用较少,所以这种图像格式迅速得到了广泛的应用。 最初的GIF只是简单地用来存储单幅静止图像(称为GIF87a),后来随着技术发展,可以同时存储若干幅静止图象进而形成连续的动画,使之成为当时支持2D动画为数不多的格式之一(称为GIF89a),而在GIF89a图像中可指定透明区域,使图像具有非同一般的显示效果,这更使GIF风光十足。目前Internet上大量采用的彩色动画文件多为这种格式的文件,也称为GIF89a格式文件。 此外,考虑到网络传输中的实际情况,GIF图像格式还增加了渐显方式,也就是说,在图像传输过程中,用户可以先看到图像的大致轮廓,然后随着传输过程的继续而逐步看清图像中的细节部分,从而适应了用户的"从朦胧到清楚"的观赏心理。目前Internet上大量采用的彩色动画文件多为这种格式的文件。 但GIF有个小小的缺点,即不能存储超过256色的图像。尽管如此,这种格式仍在网络上大行其道应用,这和GIF图像文件短小、下载速度快、可用许多具有同样大小的图像文件组成动画等优势是分不开的。 三、JPEG格式 JPEG也是常见的一种图像格式,它由联合照片专家组(Joint Photographic Experts Group)开发并以命名为"ISO 10918-1",JPEG仅仅是一种俗称而已。JPEG文件的扩展名为.jpg或.jpeg,其压缩技术十分先进,它用有损压缩方式去除冗余的图像和彩色数据,获取得极高的压缩率的同时能展现十分丰富生动的图像,换句话说,就是可以用最少的磁盘空间得到较好的图像质量。 同时JPEG还是一种很灵活的格式,具有调节图像质量的功能,允许你用不同的压缩比例对这种文件压缩,比如我们最高可以把1.37MB的BMP位图文件压缩至20.3KB。当然我们完全可以在图像质量和文件尺寸之间找到平衡点。 由于JPEG优异的品质和杰出的表现,它的应用也非常广泛,特别是在网络和光盘读物上,肯定都能找到它的影子。目前各类浏览器均支持JPEG这种图像格式,因为JPEG格式的文件尺寸较小,下载速度快,使得Web页有可能以较短的下载时间提供大量美观的图像,JPEG同时也就顺理成章地成为网络上最受欢迎的图像格式。 四、JPEG2000格式 JPEG 2000同样是由JPEG 组织负责制定的,它有一个正式名称叫做"ISO 15444",与JPEG相比,它具备更高压缩率以及更多新功能的新一代静态影像压缩技术。 JPEG2000 作为JPEG的升级版,其压缩率比JPEG高约30%左右。与JPEG不同的是,JPEG2000 同时支持有损和无损压缩,而 JPEG 只能支持有损压缩。无损压缩对保存一些重要图片是十分有用的。JPEG2000的一个极其重要的特征在于它能实现渐进传输,这一点与GIF的"渐显"有异曲同工之妙,即先传输图像的轮廓,然后逐步传输数据,不断提高图像质量,让图象由朦胧到清晰显示,而不必是像现在的 JPEG 一样,由上到下慢慢显示。 此外,JPEG2000还支持所谓的"感兴趣区域"特性,你可以任意指定影像上你感兴趣区域的压缩质量,还可以选择指定的部份先解压缩。 JPEG 2000 和 JPEG 相比优势明显,且向下兼容,因此取代传统的JPEG格式指日可待。 JPEG2000可应用于传统的JPEG市场,如扫描仪、数码相机等,亦可应用于新兴领域,如网路传输、无线通讯等等。 五、TIFF格式 TIFF(Tag Image File Format)是Mac中广泛使用的图像格式,它由Aldus和微软联合开发,最初是出于跨平台存储扫描图像的需要而设计的。它的特点是图像格式复杂、存贮信息多。正因为它存储的图像细微层次的信息非常多,图像的质量也得以提高,故而非常有利于原稿的复制。 该格式有压缩和非压缩二种形式,其中压缩可采用LZW无损压缩方案存储。不过,由于TIFF格式结构较为复杂,兼容性较差,因此有时你的软件可能不能正确识别TIFF文件(现在绝大部分软件都已解决了这个问题)。目前在Mac和PC机上移植TIFF文件也十分便捷,因而TIFF现在也是微机上使用最广泛的图像文件格式之一。 六、PSD格式 这是著名的Adobe公司的图像处理软件Photoshop的专用格式Photoshop Document(PSD)。PSD其实是Photoshop进行平面设计的一张"草稿图",它里面包含有各种图层、通道、遮罩等多种设计的样稿,以便于下次打开文件时可以修改上一次的设计。在Photoshop所支持的各种图像格式中,PSD的存取速度比其它格式快很多,功能也很强大。由于Photoshop越来越被广泛地应用,所以我们有理由相信,这种格式也会逐步流行起来。 七、PNG格式 PNG(Portable Network Graphics)是一种新兴的网络图像格式。在1994年底,由于Unysis公司宣布GIF拥有专利的压缩方法,要求开发GIF软件的作者须缴交一定费用,由此促使免费的png图像格式的诞生。PNG一开始便结合GIF及JPG两家之长,打算一举取代这两种格式。1996年10月1日由PNG向国际网络联盟提出并得到推荐认可标准,并且大部分绘图软件和浏览器开始支持PNG图像浏览,从此PNG图像格式生机焕发。 PNG是目前保证最不失真的格式,它汲取了GIF和JPG二者的优点,存贮形式丰富,兼有GIF和JPG的色彩模式;它的另一个特点能把图像文件压缩到极限以利于网络传输,但又能保留所有与图像品质有关的信息,因为PNG是采用无损压缩方式来减少文件的大小,这一点与牺牲图像品质以换取高压缩率的JPG有所不同;它的第三个特点是显示速度很快,只需下载1/64的图像信息就可以显示出低分辨率的预览图像;第四,PNG同样支持透明图像的制作,透明图像在制作网页图像的时候很有用,我们可以把图象背景设为透明,用网页本身的颜色信息来代替设为透明的色彩,这样可让图像和网页背景很和谐地融合在一起。 PNG的缺点是不支持动画应用效果,如果在这方面能有所加强,简直就可以完全替代GIF和JPEG了。Macromedia公司的Fireworks软件的默认格式就是PNG。现在,越来越多的软件开始支持这一格式,而且在网络上也越来截止流行。 八、SWF格式 利用Flash我们可以制作出一种后缀名为SWF(Shockwave Format)的动画,这种格式的动画图像能够用比较小的体积来表现丰富的多媒体形式。在图像的传输方面,不必等到文件全部下载才能观看,而是可以边下载边看,因此特别适合网络传输,特别是在传输速率不佳的情况下,也能取得较好的效果。事实也证明了这一点,SWF如今已被大量应用于WEB网页进行多媒体演示与交互性设计。此外,SWF动画是其于矢量技术制作的,因此不管将画面放大多少倍,画面不会因此而有任何损害。综上,SWF格式作品以其高清晰度的画质和小巧的体积,受到了越来越多网页设计者的青睐,也越来越成为网页动画和网页图片设计制作的主流,目前已成为网上动画的事实标准。 九、SVG格式 SVG可以算是目前最最火热的图像文件格式了,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟进行开发的。严格来说应该是一种开放标准的矢量图形语言,可让你设计激动人心的、高分辨率的Web图形页面。用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有互交功能,并可以随时插入到HTML中通过浏览器来观看。 它提供了目前网络流行格式GIF和JPEG无法具备了优势:可以任意放大图形显示,但绝不会以牺牲图像质量为代价;字在SVG图像中保留可编辑和可搜寻的状态;平均来讲,SVG文件比JPEG和GIF格式的文件要小很多,因而下载也很快。可以相信,SVG的开发将会为Web提供新的图像标准。 其它非主流图像格式: 1、PCX格式 PCX格式是ZSOFT公司在开发图像处理软件Paintbrush时开发的一种格式,这是一种经过压缩的格式,占用磁盘空间较少。由于该格式出现的时间较长,并且具有压缩及全彩色的能力,所以现在仍比较流行。 2、DXF格式 DXF(Autodesk Drawing Exchange Format)是AutoCAD中的矢量文件格式,它以ASCII码方式存储文件,在表现图形的大小方面十分精确。许多软件都支持DXF格式的输入与输出。 3、WMF格式 WMF(Windows Metafile Format)是Windows中常见的一种图元文件格式,属于矢量文件格式。它具有文件短小、图案造型化的特点,整个图形常由各个独立的组成部分拼接而成,其图形往往较粗糙。 4、EMF格式 EMF(Enhanced Metafile)是微软公司为了弥补使用WMF的不足而开发的一种Windows 32位扩展图元文件格式,也属于矢量文件格式,其目的是欲使图元文件更加容易接受 5、LIC(FLI/FLC)格式 Flic格式由Autodesk公司研制而成,FLIC是FLC和FLI的统称:FLI是最初的基于320×200分辨率的动画文件格式,而FLC则采用了更高效的数据压缩技术,所以具有比FLI更高的压缩比,其分辨率也有了不少提高。 6、EPS格式 EPS(Encapsulated PostScript)是PC机用户较少见的一种格式,而苹果Mac机的用户则用得较多。它是用PostScript语言描述的一种ASCII码文件格式,主要用于排版、打印等输出工作。 7、TGA格式 TGA(Tagged Graphics)文件是由美国Truevision公司为其显示卡开发的一种图像文件格式,已被国际上的图形、图像工业所接受。TGA的结构比较简单,属于一种图形、图像数据的通用格式,在多媒体领域有着很大影响,是计算机生成图像向电视转换的一种首选格式。 “答案来源于网络,供您参考” 希望以上信息可以帮到您!
牧明 2019-12-02 02:16:56 0 浏览量 回答数 0

问题

H5技术百问——不懂H5你就OUT啦

HTML5 是下一代的 HTML。HTML5的设计目的是为了在移动设备上支持多媒体。H5游戏,你可以看作是移动端的web游戏,H5游戏无需下载软件即可体验,这就是H5在传播上的优势。H5视频制作也是H5的重要应用领域之一。 H5开发 设置3...
yq传送门 2019-12-01 20:27:41 44227 浏览量 回答数 46

问题

【精品问答】前端开发必懂之JS技术二百问

1.document load 和 document ready 的区别 2.JavaScript 中如何检测一个变量是一个 String 类型? 3.请用 js 去除字符串空格? 4.js 是一门怎样的语言&#...
茶什i 2019-12-01 22:05:04 146 浏览量 回答数 0

问题

Vue面试题汇总【精品问答】

是一套用于构建用户界面的渐进式JavaScript框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,方便与第三方库或既有项目整合。 从0到1自己构架一个vue项目...
问问小秘 2020-05-25 18:02:28 20475 浏览量 回答数 4

回答

转自:思否 本文作者:Michael van der Gulik 原文链接:《Why WebAssembly is a big deal》 译者:敖小剑 WebAssembly 是每个程序员都应该关注的技术。WebAssembly 会变得更流行。 WebAssembly 将取代 JavaScript。WebAssembly 将取代 HTML 和 CSS。 WebAssembly 将取代手机应用。WebAssembly 将取代桌面应用。在 10 年内,我保证每个程序员至少需要知道如何使用工具来操作 WebAssembly 并理解它是如何工作的。 你可能会说,“太离谱了!” 好吧,请继续阅读。 什么是 WebAssembly 当前形式的 WebAssembly 是 Web 浏览器的新扩展,可以运行预编译代码…快速地。在 C ++ 中编写了一些小代码,然后使用 Emscripten 编译器将该代码编译为 WebAssembly。通过一些 Javascript 粘合,就可以在 Web 浏览器中调用这一小段代码,例如,运行粒子模拟。 WebAssembly 文件,扩展名为.wasm,本身是包含可执行指令的二进制格式。要使用该文件,必须编写一个运行某些 Javascript 的 HTML 文件来获取、编译和执行 WebAssembly 文件。WebAssembly 文件在基于堆栈的虚拟机上执行,并使用共享内存与其 JavaScript 包装器进行通信。 到目前为止,这似乎并不有趣。它看起来只不过是 JavaScript 的加速器。但是,聪明的读者会对 WebAssembly 可能成为什么有所了解。 WebAssembly 将成为什么? 第一个重要发现是 WebAssembly 是一个安全的沙盒虚拟机。可以从 Internet 运行喜欢的 WebAssembly 代码,而确保它不会接管 PC 或服务器。四个主流 Web 浏览器对它的安全性非常有信心,它已经默认实现并启用了。它的真正安全性还有待观察,但安全性是 WebAssembly 的核心设计目标。 第二个重要发现是 WebAssembly 是一个通用的编译目标。它的原始编译器是一个 C 编译器,这个编译器很好地指示了 WebAssembly 虚拟机的低级和可重定向性。许多编程语言都使用 C 语言编写虚拟机,其他一些语言甚至使用 C 本身作为编译目标。 此时,有人整理了一个可以编译为 WebAssembly 的编程语言列表。这份名单将在未来很多年中继续增长。 WebAssembly 允许使用任何编程语言编写代码,然后让其他人在任何平台上安全地运行该代码,无需安装任何内容。朋友们,这是美好梦想的开始。 部署问题 我们来谈谈如何将软件提供给用户。 为新项目选择编程语言的一个重要因素是如何将项目部署到客户。您的程序员喜欢用 Haskell,Python,Visual Basic 或其他语言编写应用程序,具体取决于他们的喜好。要使用喜欢的语言,他们需要编译应用,制作一些可安装的软件包,并以某种方式将其安装在客户端的计算机上。有许多方法可以提供软件 - 包管理器,可执行安装程序或安装服务,如 Steam,Apple App Store,Google Play 或 Microsoft store。 每一个安装机制都意味着痛苦,从应用商店安装时的轻微疼痛,到管理员要求在他的 PC 上运行一些旧的 COBOL 代码时的集群头痛。 部署是一个问题。对于开发人员和系统管理员来说,部署一直是一个痛点。我们使用的编程语言与我们所针对的平台密切相关。如果大量用户在 PC 或移动设备上,我们使用 HTML 和 Javascript。如果用户是 Apple 移动设备用户,我们使用……呃…… Swift?(我实际上不知道)。如果用户在 Android 设备上,我们使用 Java 或 Kotlin。如果用户在真实计算机上并且愿意处理掉他们的部署问题,那么我们开发人员才能在我们使用的编程语言中有更多选择。 WebAssembly 有可能解决部署问题。 有了 WebAssembly,您可以使用任何编程语言编写应用,只要这些编程语言可以支持 WebAssembly,而应用可以在任何设备和任何具有现代 Web 浏览器的操作系统上运行。 硬件垄断 想购买台式机或笔记本电脑。有什么选择?好吧,有英特尔,有 AMD。多年来一直是双寡头垄断。保持这种双寡头垄断的一个原因是 x86 架构只在这两家公司之间交叉许可,而且通常预编译的代码需要 x86 或 x86-64(也就是 AMD-64)架构。还有其他因素,例如设计世界上最快的 CPU 是一件很艰难但也很昂贵的事情。 WebAssembly 是一种可让您在任何平台上运行代码的技术(之一)。如果它成为下一个风口,硬件市场将变得商品化。应用编译为 WebAssembly,就可以在任何东西上运行 - x86,ARM,RISC-V,SPARC。即便是操作系统市场也会商品化;您所需要的只是一个支持 WebAssembly 的浏览器,以便在硬件可以运行时运行最苛刻的应用程序。 编者注:Second State 研发的专为服务端优化的 WebAssembly 引擎 SSVM 已经可以运行在高通骁龙芯片上。Github 链接:https://github.com/second-sta... 云计算 但等等,还有更多。云计算成为IT经理办公室的流行词已有一段时间,WebAssembly 可以直接迎合它。 WebAssembly 在安全沙箱中执行。可以制作一个容器,它可以在服务器上接受和执行 WebAssembly 模块,而资源开销很小。对于提供的每个服务,无需在虚拟机上运行完整的操作系统。托管提供商只提供对可以上传代码的WebAssembly 容器的访问权限。它可以是一个原始容器,接收 socket 并解析自己的 HTTP 连接,也可以是一个完整的 Web 服务容器,其中 WebAssembly 模块只需要处理预解析的HTTP请求。 这还不存在。如果有人想变得富有,那么可以考虑这个想法。 编者注:目前已经有人正在实现这个想法,Byte Alliance 计划将WebAssembly 带到浏览器之外,Second State 已经发布了为服务端设计的WebAssembly 引擎开发者预览版。 不是云计算 WebAssembly 足以取代 PC 上本地安装的大多数应用程序。我们已经使用 WebGL(又名OpenGL ES 2.0)移植了游戏。我预测不久之后,受益于WebAssembly,像 LibreOffice 这样的大型应用可以直接从网站上获得,而无需安装。 在这种情况下,在本地安装应用没什么意义。本地安装的应用和 WebAssembly 应用之间几乎没有区别。WebAssembly 应用已经可以使用屏幕,键盘和鼠标进行交互。它可以在 2D 或 OpenGL 中进行图形处理,并使用硬件对视频流进行解码。可以播放和录制声音。可以访问网络摄像头。可以使用 WebSockets。可以使用 IndexedDB 存储大量数据在本地磁盘上。这些已经是 Web 浏览器中的标准功能,并且都可以使用 JavaScript 向 WebAssembly 暴露。 目前唯一困难的地方是 WebAssembly 无法访问本地文件系统。好吧,可以通过 HTML 使用文件上传对话,但这不算。最终,总会有人为此创建 API,并可能称之为 “WASI”。 “从互联网上运行应用程序!?胡说八道!“,你说。好吧,这是使用 Qt 和 WebAssembly 实现的文本编辑器 (以及更多)。 这是一个简单的例子。复杂的例子是在 WebBrowser 中运行的 Adobe Premier Pro 或 Blender。或者考虑像 Steam 游戏一样可以直接从网络上运行。这听起来像小说,但从技术上说这并非不能发生。 它会来的。 让我们裸奔! 目前,WebAssembly 在包含 HTML 和 Javascript 包装器的环境中执行。为什么不脱掉这些?有了 WebAssembly,为什么还要在浏览器中包含 HTML 渲染器和 JavaScript 引擎? 通过为所有服务提供标准化 API,这些服务通常是 Web 浏览器提供的,可以创建裸 WebAssembly。就是没有 HTML和 Javascript 包装来管理的 WebAssembly。访问的网页是 .wasm 文件,浏览器会抓取并运行该文件。浏览器为WebAssembly 模块提供画布,事件处理程序以及对浏览器提供的所有服务的访问。 这目前还不存在。如果现在使用 Web 浏览器直接访问 .wasm 文件,它会询问是否要下载它。我假设将设计所需的 API 并使其工作。 结果是 Web 可以发展。网站不再局限于 HTML,CSS 和 Javascript。可以创建全新的文档描述语言。可以发明全新的布局引擎。而且,对于像我这样的 polyglots 最相关,我们可以选择任何编程语言来实现在线服务。 可访问性 但我听到了强烈抗议!可访问性怎么样??搜索引擎怎么办? 好吧,我还没有一个好的答案。但我可以想象几种技术解决方案。 一个解决方案是我们保留内容和表现的分离。内容以标准化格式编写,例如 HTML。演示文稿由 WebAssembly 应用管理,该应用可以获取并显示内容。这允许网页设计师使用想要的任何技术进行任意演示 - 不需要 CSS,而搜索引擎和需要不同类型的可访问性的用户仍然可以访问内容。 请记住,许多 WebAssembly 应用并不是可以通过文本访问的,例如游戏和许多应用。盲人不会从图像编辑器中获得太多好处。 另一个解决方案是发明一个 API,它可以作为 WebAssembly 模块,来提供想在屏幕上呈现的 DOM,供屏幕阅读器或搜索引擎使用。基本上会有两种表示形式:一种是在图形画布上,另一种是产生结构化文本输出。 第三种解决方案是使用屏幕阅读器或搜索引擎可以使用的元数据来增强画布。执行 WebAssembly 并在画布上呈现内容,其中包含描述渲染内容的额外元数据。例如,该元数据将包括屏幕上的区域是否是菜单以及存在哪些选项,或者区域是否想要文本输入,以及屏幕上的区域的自然排序(也称为标签顺序)是什么。基本上,曾经在 HTML 中描述的内容现在被描述为具有元数据的画布区域。同样,这只是一个想法,它可能在实践中很糟糕。 可能是什么 1995年,Sun Microsystems 发布了 Java,带有 Java applets 和大量的宣传。有史以来第一次,网页可以做一些比 和 GIF 动画更有趣的事情。开发人员可以使应用完全在用户的 Web 浏览器中运行。它们没有集成到浏览器中,而是实现为繁重的插件,需要安装整个 JVM。1995年,这不是一个小的安装。applets 也需要一段时间来加载并使用大量内存。我们现在凭借大量内存,这不再是一个问题,但在 Java 生命的第一个十年里,它让体验变得令人厌烦。 applets 也不可靠。无法保证它们会运行,尤其是在用户使用 Microsoft 的实现时。他们也不安全,这是棺材里的最后一颗钉子。 以 JVM 为荣,其他语言最终演变为在 JVM 上运行。但现在,那艘船航行了。 FutureSplash / Macromedia / Adobe Flash 也是一个竞争者,但是是专有的,具有专有工具集和专有语言的专有格式。我读到他们确实在2009年开启了文件格式。最终从浏览器中删除了支持,因为它存在安全风险。 这里的结论是,如果希望您的技术存在于每个人的机器上,那么安全性就需要正视。我真诚地希望 WebAssembly 作为标准对安全问题做出很好的反应。 需要什么? WebAssembly 仍处于初期阶段。它目前能很好的运行代码,而规范版本是 1.0,二进制格式定型。目前正在开展SIMD 指令支持。通过 Web Workers 进行多线程处理也正在进行中。 工具可用,并将在未来几年不断改进。浏览器已经让你窥视 WebAssembly 文件。至少 Firefox 允许查看WebAssembly 字节码,设置断点并查看调用堆栈。我听说浏览器也有 profiling 支持。 语言支持包括一套不错的语言集合–C,C++和Rust是一流的公民。C#,Go和Lua显然有稳定的支持。Python,Scala,Ruby,Java和Typescript都有实验性支持。这可能是一个傲慢的陈述,但我真的相信任何想要在21世纪存在的语言都需要能够在 WebAssembly 上编译或运行。 在访问外部设备的 API 支持方面,我所知道的唯一可用于裸 WebAssembly 的 API 是 WASI,它允许文件和流访问等核心功能,允许 WebAssembly 在浏览器外运行。否则,任何访问外部世界的 API 都需要在浏览器中的 Javascript 中实现。除了本地机器上的文件访问,打印机访问和其他新颖的硬件访问(例如非标准蓝牙或USB设备)之外,应用所需的一切几乎都可以满足。“裸WebAssembly”并不是它成功的必要条件; 它只是一个小的优化,不需要浏览器包含对 HTML,CSS 或 Javascript 的支持。 我不确定在桌面环境中让 WebAssembly 成为一等公民需要什么。需要良好的复制和粘贴支持,拖放支持,本地化和国际化,窗口管理事件以及创建通知的功能。也许这些已经可以从网络浏览器中获得; 我经常惊讶与已经可能的事情。 引发爆炸的火花是创建允许现有应用移植的环境。如果创造了“用于 WebAssembly 的 Linux 子系统”,那么可以将大量现有的开源软件移植到 WebAssembly 上。它需要模拟一个文件系统 - 可以通过将文件系统的所有只读部分都缓存为 HTTP 请求来完成,并且所有可写部分都可以在内存中,远程存储或使用浏览器可以提供的任何文件访问。图形支持可以通过移植 X11 或 Wayland 的实现来使用 WebGL(我理解已经作为 AIGLX 存在?)。 一些 SDL 游戏已经被移植到 WebAssembly - 最着名的是官方演示。 一旦 JVM 在 WebAssembly 中运行,就可以在浏览器中运行大量的 Java 软件。同样适用于其他虚拟机和使用它们的语言。 与 Windows 软件的巨大世界一样,我没有答案。WINE 和 ReactOS 都需要底层的 x86 或 x86-64 机器,所以唯一的选择是获取源代码并移植它,或者使用 x86 模拟器。 尾声 WebAssembly 即将到来。 它来得很慢,但现在所有的部分都可以在你正在使用的浏览器上使用。现在我们等待构建用于从各种编程语言中定位 WebAssembly 的基础设施。一旦构建完成,我们将摆脱 HTML,CSS 和 Javascript 的束缚。 加入阿里云钉钉群享福利:每周技术直播,定期群内有奖活动、大咖问答 阿里云开发者社区
茶什i 2020-01-07 10:32:35 0 浏览量 回答数 0
阿里云企业服务平台 陈四清的老板信息查询 上海奇点人才服务相关的云产品 爱迪商标注册信息 安徽华轩堂药业的公司信息查询 小程序定制 上海微企信息技术相关的云产品 国内短信套餐包 ECS云服务器安全配置相关的云产品 天籁阁商标注册信息 开发者问答 阿里云建站 自然场景识别相关的云产品 万网 小程序开发制作 视频内容分析 视频集锦 代理记账服务 北京芙蓉天下的公司信息查询