网页程序 vs 桌面程序
网页程序 vs 桌面程序
为什么要用网页来设计程序呢?锐某觉得这是互联网发展的必然趋势!大家也看到,云计算已经越来越流行,各种云应用如雨后春笋般冒出来,我们平时使用的大多数程序都可以通过浏览器来实现。如听音乐、看电影、看图片、玩游戏、图形与图像处理、文本编辑等等。可见,浏览器是我们平时用得最多的软件,这也是为什么各大企业纷纷推出自己的浏览器的缘故。像古狗、百度、搜狐、腾讯、淘宝、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。这个被认为自己目前为止设计过的标志中最有创意的一个,当我完成这件作品的创作时才发现“巴巴变”这个名字已经被一家网络相册的网站用了,杯具呀~~~,无奈只好为巴巴变重新起一个名字了,目前暂时没想到比较好的名字,如果到巴巴变上线时还没想好就只能向社会征集了。
网易博客:http://rybby.blog.163.com/
新浪博客:http://blog.sina.com.cn/rybby/
搜狐博客:http://rybby.blog.sohu.com/
和讯博客:http://rybby.blog.hexun.com/
CSDN博客:http://blog.csdn.net/rybby/
ITeye博客:http://rybby.iteye.com/
博客园:http://www.cnblogs.com/rybby/
开源社区:http://my.oschina.net/rybby/
百度空间:http://hi.baidu.com/rybby/
QQ空间:http://user.qzone.qq.com/898056025/
网页程序 vs 桌面程序的更多相关文章
- 用python进行桌面程序开发
Python是一种面向对象.直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所 ...
- 桌面程序的其他实现方式----使用WPF窗体展现网页
需求 在WPF应用程序中,需要使用到WEB项目的资源,第一时间想到的就是在WPF窗口中,展现WEB项目中的页面,这样子有两点好处:一是,实现简单,不需要在WPF应用程序中实现UI布局和数据绑定:二是, ...
- .NET桌面程序集成Web网页开发的多种解决方案
系列目录 [已更新最新开发文章,点击查看详细] B/S架构的Web程序几乎占据了应用软件的绝大多数市场,但是C/S架构的WinForm.WPF客户端程序依然具有很实用的价值,如设计类软件 Au ...
- 用node-webkit(NW.js)创建桌面程序
以往写windows桌面程序需要用MFC.C#之类的技术,那么如果你只会web开发技术呢?或者说你有一个网站,但是你想把你的网站打包成一个桌面应用程序,该如何做呢? 答案就是用node-webkit这 ...
- 突破短板,传统桌面程序 使用webapi 扩展迎合web和移动端融合的需求
传统桌面程序不能完全被web和移动端替代,但是需要改造.这里要说的是巧用webapi把以前用dll和com组件,ocx等方式做接口,做分布式开发的方式,改成restful 风格api的方式实现跨平台, ...
- HTML如何编写为桌面程序
学过/用过HTML的人应该都知道HTML是标记语言,是在网页上执行/使用的,在这里小编告诉你HTML也可以用来做桌面程序,这种桌面程序一般是微客户端 工具/原料 html dreamweaver ...
- 结合BeautyEye开源UI框架实现的较美观的Java桌面程序
BeautyJavaSwingRobot 结合BeautyEye开源UI框架实现的较美观的Java桌面程序,主要功能就是图灵机器人和一个2345网站万年历的抓取.... 挺简单而且实用的一个项目,实现 ...
- tkinter + cefpython 仿美团桌面程序
使用js开发桌面程序目前是一个趋势,Electron是其中一个佼佼者,网上也不乏很多文章.今天主要是来讲一下cefpython. 用python的朋友,特别使用过tkinter开发过界面的,一定会觉得 ...
- 迁移桌面程序到MS Store(11)——应用SVG图标
在传统桌面程序中,对图标的使用大多是直接嵌入JPG或者PNG的图片.在祖传的1366x768分辨率下,并没有什么问题.相对于手机硬件的突飞猛进,也侧面反映了PC行业的落寞和桌面程序开发的不思进取.用3 ...
随机推荐
- 手动安装yii2.0-redis扩展
1.点击下载:yii2.0-redis扩展 2.把下载的扩展文件放到vendor/yiisoft/下,命名为yii2-redis 3.修改vender/yiisoft/下的extensions.php ...
- Linux 软件 安装到 /usr,/usr/local/ 还是 /opt 目录
Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统级的目录,可以理解为C:/Windows/,/usr/lib理解为C:/Windows/System32./u ...
- in 和 exist 区别 (转)
select * from Awhere id in(select id from B) 以上查询使用了in语句,in()只执行一次,它查出B表中的所有id字段并缓存起来.之后,检查A表的id是否与B ...
- Android中MD5加密
最近项目中遇到MD5加密,代码很简单,又是死代码,不过要注意当长度不足32的时候要补个0.下面是具体代码,直接拷贝就能用. public static String getMD5(String str ...
- JSP页面与JSP页面之间传输参数出现中文乱码的解决方案
在学习编程初期JSP与JSP页面之间传输参数大多数都是使用这样的方式 index.jsp?id=*&name=* 这样的传输方式实质上是一种GET传输方式, 那如果出现了中文乱码, 解决方法其 ...
- VirtualBox中的虚拟机在Ubuntu 下无法启动之问题解决
我通过重新安装box解决的.发现,box安装,直接apt install有可能会出现虚拟机无法启动的问题. 一.添加VirtualBox的源并安装5.1版本virtualbox官网:https://w ...
- 42-python中的矩阵、多维数组----numpy
xzcfightingup python中的矩阵.多维数组----numpy 1. 引言 最近在将一个算法由matlab转成python,初学python,很多地方还不熟悉,总体感觉就是上手容易, ...
- CSS3 @keyframes 规则以及animation介绍和各种动画样式说明
一个好网站:http://www.jqhtml.com/ 如需在 CSS3 中创建动画,您需要学习 @keyframes 规则. @keyframes 规则用于创建动画.在 @keyframes 中规 ...
- 为什么大神的UI设计那么高级?答案尽在此文…
对于每个网页设计师而言,在设计过程中总会碰到需要作出设计决策的时候.也许你的公司并没有全职设计师,而需求上则要求设计出全新的UI:又或者你正在制作一个你自己的个人项目,而你希望它比 Bootstrap ...
- Debian 利用 iso 镜像完全离线更新 apt-cdrom
1 目的 在日常的 linux 服务器管理中,出于某些考虑,服务器要求与 Internet 完全隔离. 这使得我们对系统的更新和软件包的升级感到无比头疼. 下面介绍的这种方法,采用 ISO 文件,进行 ...