网页程序 vs 桌面程序

阅读:  评论:  作者:Rybby  日期:  来源:rybby.com
所谓的网页程序就是指以网页作为程序的操作界面,通过脚本语言“javascript”或其它客户端语言进行各种操作的程序。比如锐某现在进行开发的“巴巴变”就是一个网页程序,这个程序是用一个网页来设计网页,它可以在网页上画圆形、矩形、或用路径画出各种图形,也可以用来设计传统的网页,真正的所见即所得的网页设计工具。

为什么要用网页来设计程序呢?锐某觉得这是互联网发展的必然趋势!大家也看到,云计算已经越来越流行,各种云应用如雨后春笋般冒出来,我们平时使用的大多数程序都可以通过浏览器来实现。如听音乐、看电影、看图片、玩游戏、图形与图像处理、文本编辑等等。可见,浏览器是我们平时用得最多的软件,这也是为什么各大企业纷纷推出自己的浏览器的缘故。像古狗、百度、搜狐、腾讯、淘宝、360等等都推出了自己的浏览器,他们都已经清楚地意识到了,未来的网络,浏览器的市场份额将会直接影响一个品牌的市场份额。因为桌面网站是网站未来的发展趋势,“桌面网站”的概念锐某在半年前就已经提过了,桌面网站并不是说用桌面编程语言实现的网站,而是通过一个网页来模拟零响应的本地程序,当然这不是说能达到真正的零响应,这跟安桌系统的响应速度还有些差距,但随着像 v8 这样优秀的脚本语言解释器的出现,这种差距会慢慢缩小。以目前各大浏览器的脚本语言解释器的性能来看,要将一个网页程序流畅地运行起来已经不是问题。

可以想象,当一个企业将桌面网站整合进浏览器里,不但能决定自己品牌的生死,还可以决定其它品牌的存亡。这不是吹,就拿百度来说,如果百度进行改版推出桌面网站(整个网站只有一个页面),然后将百度设为浏览器的默认首页,每当打开百度的浏览器,出现在眼前的就是百度的网站,在这个网站里可以进行各种操作,听音乐、看电影、画图、浏览其它网站的网页等等。我们已经不需要在浏览器的地址栏输入其它网站的网址去浏览页面了,我们可以在网页中浏览网页,桌面网站里还有一个历史系统,通过历史系统可以在已打开的页面间来回转换,这个比浏览器的标签栏有用得多了,浏览器的标签数量超过一定量就会使浏览器很卡,而桌面网站的历史系统是与本地缓存(localstorage)结合使用的,不会占很多内存。桌面网站除了历史系统外,还有其它一些系统,如预载系统(预先载入内容保持网页的流畅性)、缓存系统(降低浏览器的内存使用率与网络带宽)、滑动系统(实现浏览的简单化)、按键系统(提高操作的方便性)、输出系统(控制各种浮窗的显示或隐藏)、广告系统(针对不同的用户展示不同的广告,投其所好)、检索系统(所载即所需,可以按各种条件筛选)、设置系统(可以将页面风格样式与按键分配进行自定义保存在本地缓存与服务端)与帮助系统等等。

通过桌面网站的几大系统,网页程序已经与桌面程序不分高低。就拿锐某设计的“巴巴变”来说,在功能上虽说没有 Photoshop 那样强大,但在易用性方面已经超越了 Photoshop!巴巴变将全面启用滑动系统,各种浮窗可以像手机屏幕那样上下左右滑动,传统网页的丑陋的滚动条已经被全部K掉。按键系统使用按键对象实现一键多用,比如E、D、S、F在滑动内容时是上下左右滑动一屏(加按住A是滑动一行或一列);而在修改数值数据时则是+1、-1、-5、+5(加按住A则是+10、-10、-50、+50)。同一个按键,在不同的对象里有不同的操作,如此人性化的设计,目前我还没发现有哪个程序实现(应该说没有人想到),而锐某设计的巴巴变已经启用这种技巧。如果像 Photoshop 那样多的操作命令,要将所有命令都分配不同的按键,那使用者要记住的快捷键可是非常庞大的!而且很多按键已经超出了左手手指能够触碰的范围,就从这点上看,Photoshop 在易用性方面已经奥特了!巴巴变目前是二维设计,三维网页是未来的发展趋势,以后巴巴变也会推出三维设计。就网页的特性,用简单的六面体来模拟就可以了,还不至于要用到多边形来渲染物体。这个以目前的脚本语言还是可以做到的,在以后我们将可以使像乌班图系统那样酷的3D网页。巴巴变是用 vvs(vml+svg=shape)进行图形设计的,所以不用担心浏览器的兼容问题,对于支持svg的就用svg渲染,否则用vml渲染,目前只有IE9以下的版本不支持svg,vml与svg的区别就是vml不支持透明渐变,vml在设置透明渐变时有黑边,但如果边线不是曲线的话这点问题不用担心。动画设计目前正在测试中,在未来,ssa动画(js+css=animation) 可能会取代 flash 动画成为主流的动画格式,flash要装插件才能播放,而ssa什么都不用装就能用各种浏览器进行播放,如果巴巴变以后推出三维设计,要制作 ssa 动画视频是非常方便的,现在要考虑的是如何解决声音同步问题。

经过上面对巴巴变的简单介绍,大家可以看到网页程序也可以做得很强悍,这也就可以想像各大巨头会如此拼命地抢浏览器市场了。网页程序还有些桌面程序没有的优点,就是网页程序是在线的,无需下载,打开网页就可以使用,随时随地,想用就用,没有地域的限制。在公司做不完的工作可以在家里打开网页继续做,我们的数据都保存在云端,再也不用把文件装U盘里了。另外,在线程序对数据的共享也提供了得天独厚的方便!比如你可以将用巴巴变设计的一个按钮模块、一款渐变色板、一副卡通人物表情或发型分享到网络库里,当别人进行设计的时候完全不用自己动手设计,只需从共享库里选择适当的元件就可以了,如此可以大大缩短工作周期与降低创作难度。

最后说点杯具的事,“巴巴变”是个很好的名字,用在网页设计这种类型的程序上非常适合,比如你对一个节点对象进行各种样式的设置或对一个卡通人物的表情进行选择,只要用鼠标随便点几下就能变出满意的效果。这个名字来自锐某小时候看过的一部动画片“巴巴爸爸”,这个魂淡很善变,只要说一声“克里克里,巴巴变!”就能变出各种东西来。我为巴巴变设计标志时就是从它得到灵感想到变幻线,进而设计出现在的标志:http://pan.baidu.com/disk/home#dir/path=%2FImage%2Flogo%2F%E5%B7%B4%E5%B7%B4%E5%8F%98。这个被认为自己目前为止设计过的标志中最有创意的一个,当我完成这件作品的创作时才发现“巴巴变”这个名字已经被一家网络相册的网站用了,杯具呀~~~,无奈只好为巴巴变重新起一个名字了,目前暂时没想到比较好的名字,如果到巴巴变上线时还没想好就只能向社会征集了。

网页程序 vs 桌面程序的更多相关文章

  1. 用python进行桌面程序开发

    Python是一种面向对象.直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所 ...

  2. 桌面程序的其他实现方式----使用WPF窗体展现网页

    需求 在WPF应用程序中,需要使用到WEB项目的资源,第一时间想到的就是在WPF窗口中,展现WEB项目中的页面,这样子有两点好处:一是,实现简单,不需要在WPF应用程序中实现UI布局和数据绑定:二是, ...

  3. .NET桌面程序集成Web网页开发的多种解决方案

    系列目录     [已更新最新开发文章,点击查看详细] B/S架构的Web程序几乎占据了应用软件的绝大多数市场,但是C/S架构的WinForm.WPF客户端程序依然具有很实用的价值,如设计类软件 Au ...

  4. 用node-webkit(NW.js)创建桌面程序

    以往写windows桌面程序需要用MFC.C#之类的技术,那么如果你只会web开发技术呢?或者说你有一个网站,但是你想把你的网站打包成一个桌面应用程序,该如何做呢? 答案就是用node-webkit这 ...

  5. 突破短板,传统桌面程序 使用webapi 扩展迎合web和移动端融合的需求

    传统桌面程序不能完全被web和移动端替代,但是需要改造.这里要说的是巧用webapi把以前用dll和com组件,ocx等方式做接口,做分布式开发的方式,改成restful 风格api的方式实现跨平台, ...

  6. HTML如何编写为桌面程序

    学过/用过HTML的人应该都知道HTML是标记语言,是在网页上执行/使用的,在这里小编告诉你HTML也可以用来做桌面程序,这种桌面程序一般是微客户端 工具/原料   html dreamweaver ...

  7. 结合BeautyEye开源UI框架实现的较美观的Java桌面程序

    BeautyJavaSwingRobot 结合BeautyEye开源UI框架实现的较美观的Java桌面程序,主要功能就是图灵机器人和一个2345网站万年历的抓取.... 挺简单而且实用的一个项目,实现 ...

  8. tkinter + cefpython 仿美团桌面程序

    使用js开发桌面程序目前是一个趋势,Electron是其中一个佼佼者,网上也不乏很多文章.今天主要是来讲一下cefpython. 用python的朋友,特别使用过tkinter开发过界面的,一定会觉得 ...

  9. 迁移桌面程序到MS Store(11)——应用SVG图标

    在传统桌面程序中,对图标的使用大多是直接嵌入JPG或者PNG的图片.在祖传的1366x768分辨率下,并没有什么问题.相对于手机硬件的突飞猛进,也侧面反映了PC行业的落寞和桌面程序开发的不思进取.用3 ...

随机推荐

  1. Spinnaker 介绍

    功能: 无论目标环境如何,Spinnaker 部署优势始终如一,它的功能如下: 通过灵活和可配置 Pipelines,实现可重复的自动化部署: 提供所有环境的全局视图,可随时查看应用程序在其部署 Pi ...

  2. topGO

    前面我们讲过GO.db这个包,现在接着延伸topGO包,该包是用来协助GO富集分析 1)安装 if("topGO" %in% rownames(installed.packages ...

  3. 阿里云SSL证书tomcat配置

    1. SSL证书申请 登录阿里云控制台,查看购买域名中有SSL证书的申请,ssl证书申请中有单域名的申请,配置要申请的域名信息(注意:一个域名下,一次只能添加一个证书,最多申请3个免费证书用于测试), ...

  4. Web服务技术协议:REST与SOAP

    Web服务技术就有SOAP(Simple Object Access Protocol,简单对象访问协议)和REST(Representational State Transfer,表示性状态转移) ...

  5. Spring Boot中使用Websocket搭建即时聊天系统

    1.首先在pom文件中引入Webscoekt的依赖 <!-- websocket依赖 --> <dependency> <groupId>org.springfra ...

  6. DOS中命令的格式

    ---------------siwuxie095 一.DOS中,命令使用格式的一般形式 用中文表达的形式为: [路径]  关键字  [盘符]  [路径]  文件名  [扩展名]  (参数)  [参数 ...

  7. iOS 7.0.2 的bug记录

    在iOS 7.0.2 版本上,如果从主屏幕进入webapp且webapp进入全屏模式,那么alert和修改window.location到某产品对应的itunes下载页面则无效. 可参考下面的代码示例 ...

  8. linux引导系统

    一.linux引导系统 1.选择操作系统 /etc/grub.conf 设置grub引导装载程序口令,使用单用户模式时必须输入此密码 password --md5 md5后的密码字符串(可以通过gru ...

  9. DataTable的序列化和反序列化

    /// <summary> /// DataTable序列化 /// </summary> /// <param name="dt"></ ...

  10. 解决ios手机页面overflow scroll滑动很卡的问题

    在移动端html中经常出现横向/纵向滚动的效果,但是在iPhone中滚动速度很慢,感觉不流畅,有种卡卡的感觉,但是在安卓设备上没有这种感觉; 要解决这个问题很简单: 一行代码搞定 -webkit-ov ...